收藏 分享(赏)

java基础常见面试题.docx

上传人:kpmy5893 文档编号:6603212 上传时间:2019-04-18 格式:DOCX 页数:6 大小:302.65KB
下载 相关 举报
java基础常见面试题.docx_第1页
第1页 / 共6页
java基础常见面试题.docx_第2页
第2页 / 共6页
java基础常见面试题.docx_第3页
第3页 / 共6页
java基础常见面试题.docx_第4页
第4页 / 共6页
java基础常见面试题.docx_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、1、 JDK 和 jre 的区别?JDK : Java development kit 包括 jre 和编译器等程序Jre :Java runtime environment 指的是 java 运行时环境。负责启动虚拟机,加载和运行 class 文件。2、 JVM:java virtual machine JVM 是 SUN 公司定义的规范。3、 GC:Garbage collection 垃圾回收器。没有被引用的对象需要回收。程序员不能调用 GC,system.gc()是通知调用垃圾回收器。4、 一个 java 源文件可以定义多个 class(类) ,可以定义多个public 类,但只能有一

2、个 main()方法。5、 Java 基本 8 种数据类型1 个字节: byte、Boolean2 个字节:short 、char(unicode 编码,可用于存储汉字)4 个字节:int 、float8 个字节:double、long引用数据类型 4 个 类 接口 数组6、编译器会自动装箱 存储变量时代码变为 Integer a=new Integer(3);拆箱 :int a=new Integer(3);int 是基本类型,Integer 是引用类型。怎么会没区别呢?基本类型存放在栈里面, 引用类型放在堆里面。 装箱安全性更高。例如 list 只能存放引用类型,可以使用 list.add

3、(new Integer(1)存放到 list 里面。10、常见的异常IoException 数组越界异常 nullpointerException ClassNotFoundException RuntimeException NoSuchMethodException11、成员变量和静态变量成员变量:从属于对象,存放在堆 如果要调用需 new 一个对象出来。静态变量:从属于类,存放在方法区,调用时直接 类.变量名12 、重载和重写重载:一个方法名多个方法 方法名相同 参数类型、个数、顺序不同重写:子类覆盖父类的方法13包含抽象方法的类一定是抽象类 抽象类不一定包含抽象方法。14、多态 父类

4、的引用指向子类对象 例如 Person person=new Student(); spring 中面向接口编程( Aop 动态代理使用的就是多态) 15、面向对象的三大特征 封装 继承 多态16、String 不可变字符,只能初始化一次,StringBuilder 和StringBuffer 前者线程不安全,后者线程安全。17、Java 不支持类之间的多继承,即一个子类只能有一个父类。单继承性使得 Java 简单,易于管理程序,不会出现逻辑错误以及多继承自身的缺陷。为了克服单继承的缺点,Java 使用了接口,一个类可以实现多个接口,从而在另一个更合理的角度来实现纯粹的多重继承性,实现接口使用

5、关键字 implements。子类与父类之间只可以单继承,类可以实现多个接口,接口之间可以实现多继承,即一个子接口可以使用 extends 关键字继承多个父接口,拥有多个父类,只需用逗号将接口名一一分开即可 18、若每个线程中对全局变量 、静态变量只有读操作,而无写操作,一般来说,这个全局变量是线程安全的;若有多个线程同时执行写操作,一般都需要考虑线程同步,否则的话就可能影响线程安全。 19、容器之间的关系20、map 的遍历public static void main(String args) Map map = new HashMap();map.put(“1“, “value1“);m

6、ap.put(“2“, “value2“);map.put(“3“, “value3“);/第一种:普遍使用,二次取值System.out.println(“通过 Map.keySet 遍历 key 和 value:“);for (String key : map.keySet() System.out.println(“key= “+ key + “ and value= “ + map.get(key);/第二种System.out.println(“通过 Map.entrySet 使用 iterator 遍历 key 和 value:“);Iterator it = map.entryS

7、et().iterator();while (it.hasNext() Map.Entry entry = it.next();System.out.println(“key= “ + entry.getKey() + “ and value= “ + entry.getValue();/第三种:推荐,尤其是容量大时System.out.println(“通过 Map.entrySet 遍历 key 和 value“);for (Map.Entry entry : map.entrySet() System.out.println(“key= “ + entry.getKey() + “ an

8、d value= “ + entry.getValue();/第四种System.out.println(“通过 Map.values()遍历所有的 value,但不能遍历 key“);for (String v : map.values() System.out.println(“value= “ + v);当一个人找不到出路的时候,最好的办法就是将当前能做好的事情做到极致,做到无人能及。22、set 的遍历1. 1.迭代遍历: 2. Set set = new HashSet(); 3. Iterator it = set.iterator(); 4. while (it.hasNext(

9、) 5. String str = it.next(); 6. System.out.println(str); 7. 8. 9. 2.for 循环遍历: 10. for (String str : set) 11. System.out.println(str); 12. 13. 14. 15. 优点还体现在泛型 假如 set 中存放的是 Object 16. 17. Set set = new HashSet(); 18. for 循环遍历: 19. for (Object obj: set) 20. if(obj instanceof Integer) 21. int aa= (Inte

10、ger)obj; 22. else if(obj instanceof String) 23. String aa = (String)obj 24. 25. 26. 22、冒泡排序public static void main(String args) int array=2,1,4,10,3,8,6,5;sort(array);System.out.println(Arrays.toString(array);public static void sort(int array)int temp;for(int i=0;iarrayj+1)temp=arrayj+1;arrayj+1=arrayj;arrayj=temp;23、

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 中等教育 > 试题课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报