对于这段学过的内容进行下整理:
类成员:static修饰,分为类成员,类方法,静态初始化块。对于构造器,不可用static来修饰(因为static方法为编译时确定),类成员不可访问实例成员(类成员建立时间必实例成员建立时间早,访问不到实例变量)。
final修饰符:可用于修饰类,变量,与方法,所修饰的东西不可改变,且必须初始化。
final成员变量:final修饰的成员变量必须由程序员显示指定初始值。final修饰的类变量:必须在静态初始化块中进行赋值或定义时进行初始化。final修饰的实例变量,可在非静态初始化块中,构造器中,与声明该变量时进行初始化。
final修饰的局部变量:必须进行显示初始化。
final修饰的引用变量:类似于栈区所指的堆区不变,但堆区内的东西可变。
可进行宏替换的final变量:有三个要求:1 final修饰 ,2 定义时给定初始值 3初始值编译时便确定下来
final方法不可以重写,即无子类,推广,fianl类不可以有子类。
抽象类:abstract 修饰,注意并不可用new来创建。(c++中虚函数)并不可以与final,static来修饰(编译时不可确定,且必须靠子类来补充),抽象类提供一个模板,子类来充实。
接口:(有点难,看不大懂),用interface来修饰,类似于类,可以继承,定义变量(但必须指定默认值)。
接口不可以创建实例,仅可以声明引用类型变量,其引用变量必须为类的对象。接口的主要作用为被类实现。体现出模板化程序设计。
内部类:即定义在一个类中类,内部类可以随意访问外部类,外部类不可以随意访问内部类(修饰符)。
非静态内部类不可以定义静态成员(作用时间差异)
静态内部类:static修饰,属于类本身,可以包含晶态成员,也可以包非静态成员。
局部内部类:把一个类放在一个方法内,作用于仅限制于方法中。
匿名内部类:会创建该类的一个实例,创建完成后立即消失。必须继承一个父类或父接口,且仅一个,父类必须为抽象类。匿名类不可以定义构造器,匿名类不可以为抽象类。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/279745.html