7、复用类

  • 复用类的方法:
    1、在新的类中产生现有类的对象,所以新的类由现有类的对象组成,这种方法为组合
    2、按照现有类的类型来创建类,不改变现有类的形式,在现有类中添加新代码,这种方法叫做继承

一、继承语法

  • 关键字 extends,使用时会得到基类中所有的域和方法,即继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法
    继承需要符合的关系是:is-a,父类更通用,子类更具体。
    继承允许将对象视为它自己本身的类型或者基类型来加以处理,即向上转型

  • 初始化基类
    调用基类构造器来执行初始化。
    java会自动在导出类的构造器中插入对基类构造器的调用

  • 带参数的构造器
    如果没有默认的基类构造器,或者想调用一个带参数的基类构造器,就必须用关键字super显示的编写调用基类构造器的语句
    调用基类构造器必须是你在导出类构造器中要做的第一件事

二、final关键字
用到final的三种情况:数据、方法和类
1、final修饰的类不可以被继承
final类中的所有方法都隐式的被指定为final,因为无法覆盖它们
2、final修饰的方法不可以被覆盖
3、final修饰的数据

1、为基本类型时,是一个常量。为引用类型时,使引用恒定不变,即无法更改指向的对象。
2、空白final:指声明为final,但又未给定初值的域
无论什么情况,编译器会确保空白final在使用前必须初始化。
3、final参数:这一特性主要用来向匿名内部类传递数据

当使用的数据不变时,需要定义阅读性强的名称来表示该数据,并将该数据final化。
名称规范:所有字母大写,当由多个单词组成,需要通过_进行分隔。

三、初始化及类的加载

  • 类的代码在初次使用时加载,即创建第一个对象的时候加载。或者在访问static域以及static方法的时候也会加载,以为类加载在内存中的位置和static域及方法加载的地方一样,位于内存的数据区中。

你可能感兴趣的:(7、复用类)