《java程序设计》第七周学习笔记

final关键字

可以修饰类,成员变量,方法中的局部变量

final类:将类声明为final类,不能被继承,但一定要有值

final   class   A{。。。}

final方法:如果final修饰父类的一个方法,那么这个方法不允许被重写,既不可以隐藏(老老实实继承)

常量:final修饰成员变量或局部变量,则变为常量,因此在声明时必须制定常量值

对象的上转型对象

假设动物类animal是老虎类tiger的父类,当用子类创建一个对象,并把这个对象的引用当道父类的对象中时,则称对象a是对象t类的上转型对象(好比说    老虎是动物)

例如:

动物   a;

a  =  new  老虎();

或者

动物  a;

老虎  t  =  new  老虎();

a  =  t;

上转型对象的特点:

1.上转型对象不能操作子类新增的成员变量,不能调用子类新增的方法

2.上转型对象可以访问子类继承或隐藏的成员变量,也可以调用子类继承或重写的实例方法

继承与多态

父类有多个子类,且子类都重写了父类的某个方法,将子类创建的对象的引用放到父类的对象中时,就得到了该对象的上转型对象。这个上转型对象在调用方法时就可能具有多种形态。

多态性就是指父类的某个方法被其子类重写时,可以各自产生自己的功能行为。

abstract类(抽象类)和abstract方法(抽象)

用关键字abstract修饰的类成为abstract类,例:

abstract    class   A{   。。。}

用关键字abstract修饰的方法成为abstract方法(没有具体行为),例:

abstract    int    min (int  x,int  y);

abstract类中可以有abstract方法,也可以没有、

abstract类不能用new运算符创建对象

非抽象类是抽象类的子类时,必须重写父类的方法体(只能继承),去掉abstract方法的abstract修饰,并给出方法体。即不能用final和abstract同时修饰同一个方法或者类。如果抽象类是抽象类的子类时,可以重写父类的abstract方法,也可以继承。

abstract类的子类

猜你喜欢

转载自blog.csdn.net/banquet79/article/details/84894758