个人学习总结的部分java小知识与面试题(一)

来源:互联网 发布:中国游戏中心 mac 编辑:程序博客网 时间:2024/06/01 15:27

1.一个java源文件中是否可以包括多个类(其中不包含内部类)?有什么限制

答:可以有多个类,但只能有一个public类,并且public类名必须与文件名相同。


2.java有没有goto?    答:java中的保留字,现在没有在java中使用。


3.&和&&的区别?

答:&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true,整个结果运算才为true,否则,只要有一方为false,结果为false。

       &&具有短路的功能,当第一个表达式为false,则第二个表达式不进行执行运算,举两个例子:

       &也是一种位与运算符,当两边表达式不为boolean类型时,与的计算规则是,如果两个数都都为真(或为1),其结果为真,如果两位数中有一位为假(或为0)者结果为假

   例一:String str=null;if(str!=null&&!str.equals("")){}//当str!=null为false,!str.equals("")不执行if(str!=null&!str.equals("")){}//当str!=null为false,!str.equals("")执行并报NullPointerException异常   例二:int x=0,y=0;if(x==1&&++y>0){}System.out.println("y="+y);//y=0if(x==1&++y>0){}System.out.println("y="+y);//y=1
   例三:比如a&b;表示把a和b进行二进制的按位与运算比如8&10,其中8的二进制是0000 1000,而10的二进制是0000 1010,因此         0000 1000(十进制8)       & 0000 1010(10进制10)       结果为0000 1000(就是10进制的8)