静态初始化块:
static
static{
语句写在这里
}
它是被加载器加载是执行的语句:
它的作用是允许类执行任何所需要的值需要发生一次的设置任务。也就是说它只执行一次。
实例初始化快:
实例初始化块和静态初始化块类似,它在类的对象每次实例化时执行一次,实例初始化块和构造器之间的不同在于实例初始化块在构造器调用之前执行。
它的语法非常简单;
{
语句写在这里。
}
它不使用任何关键字,也没有名称。
内部类:
内部类按照位置可以分为两种
成员内部类和局部内部类
成员内部类按照是否是静态有可分为静态内部类和普通内部类
class Outer{
static class Inner{ (静态内部类)
}
}
class Outer{
class Inner{ (普通内部类)
}
}
局部内部类按照有无类名又可分为普通局部内部类和匿名内部类
多态:
即相同的行为 ,不同的实现。
多态可以分为静态多态和动态多态。
静态多态是指程序在编译时,系统分就能决定调用哪个方法。比如方法重载、方法重写
动态多态是指在运行中系统才能确定方法所指的对象。
多态的技术基础:
向上转型技术:一个父类的引用变量可以指向不同的子类对象,或者说以个子对象可以被当做一个父类类型。
instanceof关键字: instanceof 关键字用与判断运行时对象的真正类型。
动态绑定技术: 运行时根据父类引用变量所指的对象的实际类型执行相应的子类方法。从而实现多态性。