一、构造方法:
1:构造方法可以被重载,一个构造方法可以通过this关键字调用另一个构造方法,this语句必须位于构造方法的第一行;
2:构造方法不能被static、final、synchronized、abstract、native修饰,但可以被public、private、protected修饰;
3:构造方法不是类的成员方法;
4: 构造方法不能被继承。
二、java.util.concurrent 包。这个包包含有一系列能够让 Java 的并发编程变得更加简单轻松的类:
A、Semaphore:类,控制某个资源可被同时访问的个数;
B、 Future:接口,表示异步计算的结果;
C、ReentrantLock:类,具有与使用synchronized方法和语句所访问的隐式监视器锁相同的一些基本行为和语义,但功能更强大;
D、 CountDownLatch: 类,可以用来在一个线程中等待多个线程完成任务的类。
三、
![]()

byteb1=1,b2=2,b3,b6;
finalbyte b4=4,b5=6;
b6=b4+b5;
b3=(b1+b2);
System.out.println(b3+b6);
语句:b3=b1+b2编译出错
被final修饰的变量是常量,这里的b6=b4+b5可以看成是b6=10;在编译时就已经变为b6=10了
而b1和b2是byte类型,java中进行计算时候将他们提升为int类型,再进行计算,
b1+b2计算后已经是int类型,赋值给b3,b3是byte类型,类型不匹配
,编译不会通过,需要进行强制转换。
Java中的byte,short,char进行计算时都会提升为int类型。
四、JDK1.6提供的6中作用于不同年代的垃圾收集器
五:
int i=0;
i=i++;//i还是为0
i=++i;//i才是1
六、
成员方法又称为实例方法
静态方法又称为类方法
七、
一个java文件可以包含多个java类,但是只能包含一个public类,并且public类的类名必须与java文件名相同。
八、
普通的类方法是可以和类名同名的,和构造方法唯一的区分就是,构造方法没有返回值。
publicclass TestCon{
String name;
publicTestCon(){
this.name = "xxxx";
}
publicint TestCon(){
return-1;
}
}
九、声明为static和transient类型的成员数据不能被序列化。因为static代表类的状态, transient代表对象的临时数据。
十、
A:java的访问权限有public、protected、private和default的,
default不能修饰变量
C:
普通变量不能用abstract修饰
,abstract一般修饰方法和类
D:被定义为abstract的类需要被子类继承,但是被修饰为final的类是不能被继承和改写的,所以不能用final修饰
十一、java异常处理机制