继承中构造方法的特点
每个子类构造方法的第一条语句都是 super()
因为子类会继承父类的数据,初始化之前,一定会调用父类的初始化.哪怕子类初始化的时候调用的是有参构造
- final修饰子类方法,子类不能重写
- final修饰成员变量, 相当于常量,不能再次赋值.
- finial修饰类 不能被继承
内部类
- 内部类可以直接访问外部类的成员,包括私有
public class Outer {
private int num;
//内部类
public class Inner {
public void show(){
System.out.println(num); //可以直接访问外部类的私有方法
}
}
public void method(){
Inner inner = new Inner();
inner.show(); //外部类访问内部类,需要先实例内部类
}
}
其他类访问内部类
public class Demo {
public static void main(String[] args) {
Outer.Inner inner = new Outer().new Inner();
}
}
匿名内部类
线程安全的类
- StringBuffer
- Vector
- Hashtable