欢迎来到天天文库
浏览记录
ID:39507519
大小:131.00 KB
页数:31页
时间:2019-07-04
《java面试复习》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1.java的数据类型有哪些?(1)基本数据类型(八种):整型:byte1字节,short2字节,int4字节,long8字节浮点型:float4字节,double8字节【float类型共32位,其中1位为符号位,指数8位,尾数23位。】【double类型能表示64位,其中1位符号位,11位指数,52位尾数】【浮点数的字面量默认是double】字符型:char2字节【unicode编码值】boolean型:boolean1字节【值只有true和false】隐式类型转换:正方向:char→int→long→f
2、loat→double负方向:byte�short�int�long�float�double⑵引用类型(自定义类型):比如String2.JAVA中成员变量和局部变量的区别?⑴成员变量:是在类范围内定义的(也叫成员属性)类属性:使用static修饰的就是类属性。作用域:类属性的作用域与这个类的生存范围相同,它作为类的一个成员,与类共存亡。只要类存在,程序就可以访问该类的类属性。实例属性:不被static修饰的就是实例属性。作用域:实例属性则从这个类的实例(对象)被创建开始存在,直到系统完全销毁这个实例,它
3、作为实例(对象)的一个成员,与实例(对象)共存亡。只要实例存在,程序就可以访问该实例的实例属性。⑵局部变量:在一个方法内定义的变量。(包括方法的形式参数)1.形参:作用域是整个方法体2.方法局部变量:一个代码块中3.代码块局部变量:一个代码块中注意:局部变量除了形式参数外,都必须显示初使化(必须显示指定初使值)。否则不可以访问它们。形式参数不须显示初使化,它在被调用时由系统完成。3.前++和后++的区别?i++,后++,先将i的值作为整个表达的值,然后将i增加1。++i,先++,先将i增加1,然后将i的值作
4、为整个表达的值。4.短路运算符和非短路运算符的区别?短路运算符[条件1&&条件2],如果条件1不成立,则条件2不执行;非短路运算符[条件1&条件2],两个条件都会执行。5.java中的4种访问制权限有哪些?分别作用范围是什么?(1).public:最大访问控制权限,对所有的类都可见。(2).protect:修饰的,在类内部、同一个包、子类中能访问(3).default:包访问权限,即同一个包中的类可以可见。默认不显式指定访问控制权限时就是default包访问控制权限。(4).private:最严格的访问控制
5、权限,仅该类本身可见。6.JAVA5的新特性有哪些?(1)循环(For-each循环)for(typevariable:array){body}for(typevariable:arrayList){body}而1.4必须是:for(inti=0;i6、ayList为例,包括创建一个容器对象和取得容器内对象操作:1.5ArrayListarrayList=newArrayList();arrayList.get(i)1.4ArrayListarrayList=newArrayList();(Type)arrayList.get(i)(3)自动装箱拆箱在JDK5.0以前,在原始类型与相应的包装类之间的转化是不能自动完成的。要完成这种转化,需要手动调用包装类的构造函数,在JDK5.0环境中,可以自动转化:1.5Integerwrappe7、r=n;intn=wrapper;1.4Integerwrapper=newInteger(n);intn=wrapper.intValue();自动装包/拆包大大方便了基本类型数据和它们包装类地使用。自动装包:基本类型自动转为包装类.(int>>Integer);自动拆包:包装类自动转为基本类型.(Integer>>int);(4)静态导入静态导入功能对于JDK5.0以前的版本是不支持的。importstaticjava.lang.Math;importstaticjava.lang.System;...8、1.5out.println(sqrt(PI));1.4System.out.println(Math.sqrt(Math.PI));(5)可变参数(Varargs)可变参数使程序员可以声明一个接受可变数目参数的方法。注意,可变参数必须是函数声明中的最后一个参数。在JDK1.5之前,可以用重载来实现,但是这样就需要写很多的重载函数。line1publicvoidwrite(Objectobjs){line2for
6、ayList为例,包括创建一个容器对象和取得容器内对象操作:1.5ArrayListarrayList=newArrayList();arrayList.get(i)1.4ArrayListarrayList=newArrayList();(Type)arrayList.get(i)(3)自动装箱拆箱在JDK5.0以前,在原始类型与相应的包装类之间的转化是不能自动完成的。要完成这种转化,需要手动调用包装类的构造函数,在JDK5.0环境中,可以自动转化:1.5Integerwrappe
7、r=n;intn=wrapper;1.4Integerwrapper=newInteger(n);intn=wrapper.intValue();自动装包/拆包大大方便了基本类型数据和它们包装类地使用。自动装包:基本类型自动转为包装类.(int>>Integer);自动拆包:包装类自动转为基本类型.(Integer>>int);(4)静态导入静态导入功能对于JDK5.0以前的版本是不支持的。importstaticjava.lang.Math;importstaticjava.lang.System;...
8、1.5out.println(sqrt(PI));1.4System.out.println(Math.sqrt(Math.PI));(5)可变参数(Varargs)可变参数使程序员可以声明一个接受可变数目参数的方法。注意,可变参数必须是函数声明中的最后一个参数。在JDK1.5之前,可以用重载来实现,但是这样就需要写很多的重载函数。line1publicvoidwrite(Objectobjs){line2for
此文档下载收益归作者所有