12.6总结

final关键字
final 表示“不可改变的,最终的”的意思。用于修饰变量,方法和类,
当final关键字修饰变量时,表示变量时不可改变的量,即常量
当final关键字修饰方法时,表示该方法不可被子类重写,即最终方法
当final关键字修饰类时,表示该类不可被子类继承,即最终类

内部类,在一个类的类体之内在定义一个类,该情况外面的类成为“外部类”,里面的类成为内部类
内部类可以分方便访问你外部类的私有成员属性,在外部类方法中可以访问成员内部类的成员,同时也可以在外部类的外部直接实例化内部类的对象,内部类实例化语法:
对象名= new 外部类对象.new 内部类构造方法

局部内部类
定义:崽方法定义的内部类称为局部内部类
局部内部类不能用public或者private访问修饰符进行声明
局部内部类作用域被限定在声明该类的方法快中
局部内部类的优势在于,可以对外界完全隐藏起来
局部内部类不仅可以访问包含他的外部类的成员,还可以访问局部变量,但前提是将其声明为final

定义抽象类
抽象类对问题领域惊醒分析后得出的抽象概念,
abstract关键字放在class前,知名该类是抽象类
abstract关键字放在方法的返回类型前,知名方法是抽象方法,抽象方法没有方法体
抽象类不能被实例化,无法使用new关键字直接创造抽象类的实例,即使抽象类中不包含抽象方法也不行
一个抽象类中可以包含有多个抽象方法,也可以含有已实现的方法
抽象类可以包含成员变量以及构造方法,但不能通过构造方法创建实例,可在子类创建实例时调用
定义抽象类的三种情况:直接定义一个抽象类,或继承一个抽象类但没有完全实现父类包含的抽象方法;或时间一个接口,但完全实现就扣中包含的抽象方法

接口:
接口定义了某一批类所需要遵守的公共行为规范,只规定这批类必须提供的某些方法,而不提供任何实现

java允许一个类实现多个接口,java只支持单一继承,不支持多重
【访问符】 interface 接口名【extends 父接口1,父接口2……】

一个接口可以继承多个父接口,但接口只能继承接口,不能继承类
接口体中可以包含静态变量,抽象方法,内部类,内部接口
实现接口:
接口不能直接实例化,但可以使用接口声明引用类型的变量,该变量可以引用到接口的实现类的实例对象上,接口的主要用途就是被实现类实现,一个类可以实现一个或多个接口。
实现接口:class 类名.implentents 接口【接口1……】{}

接口,抽象类区别:接口为多个继承,接口体现的是一种规范,抽象类体现的是一种模板形式

implentents用于实现接口:
一个类实现多个接口,之间用逗号间隔

猜你喜欢

转载自blog.51cto.com/14589602/2457014