注:所有答案凭个人理解作答,不可用作标准答案。
1.一个java文件中是否可以包含多个类(不是内部类)?有什么限制?
答:可以有多个类,但是只能有一个public .
2.Java有没有goto?
答:goto是java的保留字,不是关键字,可以说是以后可能会启用。
3.说说&和&&的区别?
答:&是按位与,两边都要执行,而&&是逻辑与,执行一遍也可以,即短路与的功能
4.在java中如何跳出当前的多重嵌套循环?
答:break aim; //aim是个标记,放在最外面循环的开始位置。
例如:
aim for(....){
for(...){
break aim;
}
}
5.switch语句能否作用在byte上?能否作用在long上?能否作用在String上?
答:switch可以作用在byte上,但是不能作用在long上,之前不能作用在String,最新的jdk可以了。
6.short s1=1;s1=s1+1;有什么错?short s1=1;s1+=1;有什么错?
答:s1+1默认是int类型的,向下要进行强制转换
7.cha类型变量能不能存储一个汉字?为什么?
答:char类型可以存储一个汉字,因为char是两个字节,汉字也是两个字节
8.用最有效的方法算出2*8等于几?
答:2<<3
10.使用final修饰一个变量时,是引用不能变,还是引用的对象不能变?
答:引用不能改变
11.“==”和equal方法究竟有什么区别?
答:==对于对象比较的是内存地址,而equals默认比较的是地址。而平时用的String.equals是已经重写过equals了
12.静态变量和实例变量究竟有什么区别?
答:static变量是对象共有的属性,可以用类直接去访问。而实例变量每个对象的都可以不同,必须通过对象.属性进行访问。
13:是否可以从一个static方法内部发出对非static方法的调用?
答:不可以
14.Integer于int的区别?
答:integer是int的包装类,完成对int操作的一些方法,常见的就是一些类型的转换。例如int a=0;String s=Integer.toString(a);
15.Math.round(11.5)等于多少?math.round(-11.5)等于多少?
答:12,-11.网上看到一种便于记忆的方法是小数点后一位 大于5或小于5,按正常的四舍五入就行。当等于5的时候,正数则个位加1,负数则个位不变
16.请说明作用于public、private、protected、以及不写时的区别?
答: 类内部 同一包内 子类 外部类
Private v
Default v v
Protected v v v
Public v v v v
17overload和override的区别。overload的方法是否可以改变返回值的类型?
答:overload 是重载,参数类型或者个数不同。Override是复写,参数和返回类型都相同。overload改变返回值也可以但是参数必须改变。
18.搞了多个重载方法,参数分别是int,char,和double然后将double x=2,传递进去,会选择哪个方法?
答:调用的是 double参数的方法,如果调用 方法名(2),则默认调用的是int参数的方法
19.classloader如何加载class?
答:.Classloader是父类委托机制,如果一个类有父类,则先加载该类的父类。实际上classloader先加载java核心api,再加载扩展api
20.arraylist如何实现插入的数据按自定义的方式有序存放?
答:先让该类实现compareable接口,再通过collections.sort(list)就可以实现对其按自定义方式进行排序。