1、面向对象的特征有哪些方面?
抽象,继承,封装,多态
2、访问修饰符public,private,protected,以及不写(默认)时的区别?
区别如下:
作用域 当前类 同包 子类 其他
public √ √ √ √
protected √ √ √ ×
default(不写)√ √ × ×
private √ × × ×
3、String 是最基本的数据类型吗?
不是。Java中的基本数据类型只有8个:byte、short、int、long、float、double、char、boolean;
4、float f=3.4;是否正确?
不正确。3.4是双精度数,将双精度型(double)赋值给浮点型(float)属于下转型(down-casting,也称为窄化)
会造成精度损失,因此需要强制类型转换float f =(float)3.4; 或者写成float f =3.4F;。
5、short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗?
对于short s1 = 1; s1 = s1 + 1;由于1是int类型,因此s1+1运算结果也是int 型,需要强制转换类型才能赋值给
short型。而short s1 = 1; s1 += 1;可以正确编译,因为s1+= 1;相当于s1 = (short)(s1 + 1);其中有隐含的强制类型
转换。
6、String str = new String(“hello”);
上面的语句中str放在栈上,用new创建出来的字符串对象放在堆上,而“hello”这个字面量放在静态存储区。
7、Math.round(11.5) 等于多少? Math.round(-11.5)等于多少?
Math.round(11.5)的返回值是12,Math.round(-11.5)的返回值是-11。四舍五入的原理是在参数上加0.5然后进行下
取整。
8、swtich 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上?
从JDK 1.7版开始,还可以是字符串(String)。长整型(long)是不可以的。
9、数组有没有length()方法?String 有没有length()方法?
数组没有length()方法,有length 的属性。String 有length()方法。JavaScript中,获得字符串的长度是通过
length属性得到的,这一点容易和Java混淆。
10、在Java 中,如何跳出当前的多重嵌套循环?
在最外层循环前加一个标记如A,然后用break A;可以跳出多重循环。
|
|