Java题集(1)

Java题集(1)

1、Java创建对象的几种方式?
  (1)new创建新对象
  (2)通过反射机制
  (3)采用clone机制
  (4)通过序列化机制
2、Java有没有goto?
  java中的保留字,现在没有在java中使用
3、用最有效率的方法算出2乘以8等于几?
  2 << 3
4、描述一下JVM加载class文件的原理机制?
  JVM中类的装载是由ClassLoader和它的子类来实现的,Java ClassLoader 是一个重要的Java运行时系统组 件。它负责在运行时查找和装入类文件的类

5、Java中有几种内部类?

​   成员内部类,静态内部类,方法内部类,匿名内部类

6、JVM分为哪些区,每一个区干嘛的?

​   1)方法区:被所有的线程共享。方法区包含所有的类信息和静态变量。
​   2)堆:被所有的线程共享,存放对象实例以及数组,Java堆是GC的主要区域。
​   3)栈:每个线程包含一个栈区,栈中保存一些局部变量等。
​   4)程序计数器:是当前线程执行的字节码的行指示器。

7、产生死锁的四个条件

​   1)互斥条件(进程独占资源)

​   2)请求与保持(进程因请求资源而阻塞时,对已获得的资源保持不放)

​   3)不剥夺条件(进程已获得的资源,在末使用完之前,不能强行剥夺)

​   4)循环等待(若干进程之间形成 一种头尾相接的循环等待资源关系)

8、char 型变量中能不能存贮一个汉字 ?为什么?

​   能的,因为char型变量是用来存储Unicode编码的,Unicode编码中存储了汉字,所以char能存储汉字。

9、说一下 HashMap 的实现原理?

​   HashMap 基于 Hash 算法实现的,我们通过 put(key,value)存储,get(key)来获取。当传入 key 时,HashMap 会根据 key. hashCode() 计算出 hash 值,根据 hash 值将 value 保存在 bucket 里。当计算出的 hash 值相同时,我们称之为 hash 冲突,HashMap 的做法是用链表和红黑树存储相同 hash 值的 value。当 hash 冲突的个数比较少时,使用链表否则使用红黑树。

10、如何实现数组和 List 之间的转换?

​   - 数组转 List:使用 Arrays. asList(array) 进行转换。

​   - List 转数组:使用 List 自带的 toArray() 方法。

11、哪些集合类是线程安全的?

​   Vector、Hashtable、Stack 都是线程安全的,而像 HashMap 则是非线程安全的,不过在 JDK 1.5 之后随着 Java. util. concurrent 并发包的出现,它们也有了自己对应的线程安全类,比如 HashMap 对应的线程安全类就是 ConcurrentHashMap。

12、什么是反射?

​   反射是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为 Java 语言的反射机制。

13、Java最顶级的父类是哪个?

​   Object

14、Java都有那些开发平台?

​   javaEE,javaSE,javaME

15、System.out.println(‘a’ + ‘b’);输出的结果是什么呢?

​   195

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值