1.throw和throws的区别
Throws用于声明方法中可能出现的异常,下载方法后,有该方法的调用者处理。
Thorw用于方法体中,指语句抛出一个异常由方法体内的语句处理。
2.什么是事务?事务的特性?
java事务分:jdbc事务、jta事务、容器事务。表示一个逻辑单位的一系列操作,要么完全执行,要么完全不执行
原子性(atomic):一组操作不可分割。
一致性(consistent):操作前后状态一致。
隔离性(isolation):事务和事务之间相互隔离,互不影响。
持久性(durable):事务一旦提交对数据库的操作是持久的。
3.抽象关键字abstract和那些修饰符不可共存?
final,private , static , native ,synchronized
4.多态的定义及实现
定义:同一引用,使用不同的对象,执行不同的方法。
实现方法:将父类类型作为方法的参数;将父类类型作为方法的返回值类型.
5.super()和this()是否可以同时出现杂构造函数中?为什么一定要定义在第一行?
不行,super()和this()都只能写在第一行,只能出现一个,super()和this()都是调用构造方法,构造方法用于初始化,初始化的动作要先完成。
6.什么是单例模式
public class single{
private static class single(){}//构造方法私有化
private static single s;//创建私有静态类对象
public static single getSingle{//定义公有静态方法返回该对象
if(null==s){
s = new single();}
return s;
}}
7.集合(List)和数组(Array)的区别
1.数组长度固定,而集合长度可变。
2.数组存储基本数据类型和引用类型,而集合只存储引用类型。
3.数组存储的都是同一数据类型,而集合可以存储不同的数据类型
8.List,Set,Map的区别
1.list和set都是collection接口的实现,都是单列元素集合。
2.list表示有先后顺序的集合,集合内元素可重复,而set无序不可重复。
3.map集合是以键值对存在的双列集合,无序不可重复。
9.接口的优点
便于修改,扩展开发,协同开发
10.当类被加载时,类中静态申明的执行顺序
初始化静态属性,执行静态代码块,执行类加载的构造函数
11.char型变量能否存储一个中文汉字?WHY?
Java的unicode编码中,一个char占2个字节(byte)16个位(bit)可以存放汉字。
12.启动一线程是用start()还是用run()?
启动一个线程用start()方法,它使线程所处的虚拟处理器处于可运行状态,这代表它可以由jvm调度并执行,但不代表线程会立即执行。
run()方法可以产生一个必须退出的标志来停止线程。
13.什么时候调用doGet()和doPost()
JSP中页面中表单method属性为get时调用doGet()为post时调用doPost();
14.short s1=1; s1= s1+1;有什么错?short s1=1;s1 += 1;有什么错:
s1+1运算结果是int型的需要强转,而s1+=1隐式强转编译正确;
15.String s = new String(“xyz”);创建了几个String Object?
两个,一个是编译时决定的,最后放入常量池中,一个是运行时放在堆里面的,俩都是“xyz”
s是个引用,本身不是对象,常量池中只会有一个“xyz”,堆中可以后多个。
16.数组有没有length()方法?String呢?
数组有length属性没有length()方法,String有length()方法。
17.构造器constuctor是否可被override?
构造器constuctor不可继承,因此不可override但可以重载overloading