2016.03.20(pio,都忘了,跟没有嘴一样)

来源:互联网 发布:淘宝差评多长时间生效 编辑:程序博客网 时间:2024/05/16 09:43

1.同步方法和同步代码块的区别是什么?
区别:
同步方法默认用this或者当前类class对象作为锁;
同步代码块可以选择以什么来加锁,比同步方法要更细颗粒度,我们可以选择只同步会发生同步问题的部分代码而不是整个方法;
2.在监视器(Monitor)内部,是如何做线程同步的?程序应该做哪种级别的同步?
监视器和锁在Java虚拟机中是一块使用的。监视器监视一块同步代码块,确保一次只有一个线程执行同步代码块。每一个监视器都和一个对象引用相关联。线程在获取锁之前不允许执行同步代码重点内容
3.Java堆的结构是什么样子的?什么是堆中的永久代(Perm Gen space)?
**JVM的堆是运行时数据区,所有类的实例和数组都是在堆上分配内存。它在JVM启动的时候被创建。对象所占的堆内存是由自动内存管理系统也就是垃圾收集器回收。

堆内存是由存活和死亡的对象组成的。存活的对象是应用可以访问的,不会被垃圾回收。死亡的对象是应用不可访问尚且还没有被垃圾收集器回收掉的对象。一直到垃圾收集器把这些对象回收掉之前,他们会一直占据堆内存空间。**

4.串行(serial)收集器和吞吐量(throughput)收集器的区别是什么?
吞吐量收集器使用并行版本的新生代垃圾收集器,它用于中等规模和大规模数据的应用程序。而串行收集器对大多数的小应用(在现代处理器上需要大概100M左右的内存)就足够了。

  1. 下面关于java.lang.Exception类的说法正确的是()
    A 继承自Throwable B Serialable CD 不记得,反正不正确
    A
  2. Java接口的修饰符可以为()
    A private B protected C final D abstract
    D
    7.ArrayList list = new ArrayList(20);中的list扩充几次()
    A 0 B 1 C 2 D 3
    A
    默认10个长度,每次扩充50%,但是构造方法已经初始化了一个值。所以是0
  3. 什么是java的平台无关性?
    java编译成字节码文件后只要在对应的平台安装对应的平台的jvm软件就可以运行。Java主要靠Java虚拟机(JVM)在目标码级实现平台无关性。JVM是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。但JVM通常是在软件上而不是在硬件上实现。
    9.java的反射机制是什么
    Java的反射机制是在编译时并不确定是哪个类被加载了,而是在程序运行的时候才加载、探知、自审。使用的是在编译期并不知道的类。这样的编译特点就是java反射。
    10.有一个student表,有学号,姓名,科目,成绩等字段,请写一条sql语句,算出学生的总分数?
    select 学号 ,sum(成绩)as 总成绩 from student group by 学号;
0 0
原创粉丝点击