15、error和exception有什么区别?
error 表示恢复不是不可能但很困难的情况下的一种严重问题 。比如说内存溢出 。不可能指望程序能处理这样的情况 。
exception 表示一种设计或实现问题 。也就是说,它表示如果程序运行正常 , 从不会发生的情况 。
16、同步和异步有何异同,在什么情况下分别使用他们?举例说明 。
如果数据将在线程间共享 。例如正在写的数据以后可能被另一个线程读到 , 或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取 。
当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时 , 就应该使用异步编程,在很多情况下采用异步途径往往更有效率 。
17、try { }里有一个return语句,那么紧跟在这个try后的finally { }里的code会不会被执行,什么时候被执行 , 在return前还是后?
会执行,在return前执行 。
18、Java中的异常处理机制的简单原理和应用 。
当JAVA程序违反了JAVA的语义规则时 , JAVA虚拟机就会将发生的错误表示为一个异常 。违反语义规则包括2种情 况 。一种是JAVA类库内置的语义检查 。例如数组下标越界,会引发IndexOutOfBoundsException;访问null的对象时会引发 NullPointerException 。另一种情况就是JAVA允许程序员扩展这种语义检查,程序员可以创建自己的异常,并自由选择在何时用 throw关键字引发异常 。所有的异常都是java.lang.Thowable的子类 。
19、垃圾回收的优点和原理 。并考虑2种回收机制 。
Java语言中一个显著的特点就是引入了垃圾回收机制,使C++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理 。由于有个垃圾回收机制,Java中的对象不再有 "作用域"的概念,只有对象的引用才有"作用域" 。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存 。垃圾回收器通常是作为一个单独的低级别的 线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾 回收 。回收机制有分代复制垃圾回收和标记垃圾回收 , 增量垃圾回收 。
20、请说出你所知道的线程同步的方法 。
wait():使一个线程处于等待状态,并且释放所持有的对象的lock 。
sleep():使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要捕捉InterruptedException异常 。
notify():唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切的唤醒某一个等待状态的线程,而是由JVM确定唤醒哪个线程,而且不是按优先级 。
Allnotity():唤醒所有处入等待状态的线程 , 注意并不是给所有唤醒线程一个对象的锁,而是让它们竞争 。
21、描述一下JVM加载class文件的原理机制
JVM中类的装载是由ClassLoader和它的子类来实现的,Java ClassLoader 是一个重要的Java运行时系统组件 。它负责在运行时查找和装入类文件的类 。
22、MVC的各个部分都有那些技术来实现?如何实现?
MVC是Model-View-Controller 的简写 。"Model" 代表的是应用的业务逻辑(通过JavaBean,EJB组件实现), "View" 是应用的表示面(由JSP页面产生),"Controller" 是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现 。这些组件可以进行交互和重用 。
23、List、Map、Set三个接口 , 存取元素时 , 各有什么特点?
推荐阅读
- 电脑散热器是给什么降温,电脑散热器能降温多少度
- 单机cpu什么牌子好,玩主流单机电脑配置
- phpcmsv9模板php代码,phpcms教程
- 做企业直播卖货怎么样呢,企业直播带货对公司的好处
- linux擦除光盘命令 linux光盘卸载命令
- flutter设置滚动区域高度的简单介绍
- ipad没显卡怎么剪视频,平板没有显卡吗
- 模拟丧尸入侵的游戏,各种丧尸模拟器
- 赋值函数Python 赋值函数什么情况下调用