继承

来源:互联网 发布:python pyqt 实例 编辑:程序博客网 时间:2024/05/20 18:16

继承

***********************************************************************************************************

基本概念:

类与类的关系。 -----------------is a

把具有相同属性或行为的类进行抽取,设计为父类。

子类通过 继承就可以自动具备来自父类的属性和行为。

基类------父类

派生类----子类                 隔层父类---------超类

优点:   1.代码的可重用性。

2.扩展性增加

3.设计程序变得简单

4.子类继承父类的属性和行为

Java是单继承: 一个子类只能继承一个父类------类的层次性更清晰。

多继承:极大的提高了设计的丰富度(c++)


***********************************************************************************************************

Object类是所有包括数组的超类(了解并掌握他的方法)


在引用数据类型中,变量用 == 比较的时候,不是比较对象里面的内容是

否相等,而是比较这2个变量是否指向同一个对象。

equals() 来自于Object,比较2个对象的内容是否相同。而现在使用前,

应对equals进行重写,需要判定2个对象在业务上是否相等。

toString() 返回一个对象的字符串描述。

当我们直接对对象进行字符串操作的时,比如直接打印对象。

***********************************************************************************************************

方法的重写:

在继承关系中,子类把在父类中继承的方法重新实现。

1.方法名必须保持一致

2.参数列表必须保持一致

3.返回类型必须一致

4.访问修饰符必须大于或等于父类的访问修饰符

5.子类重写方法不能抛出比父类被重写方法更多的异常

***********************************************************************************************************

finalize() 处理垃圾对象 ----------------GC调用 不考虑重写

final : 1.修饰变量 ,变量变常量

2.修饰方法 ,方法不能被重写

3.修饰类 ,类就不能被继承,则被称为终态类,最终类

finally :


方法中:可选修饰符和访问修饰的位置是可以交换的。


***********************************************************************************************************

继承的内存实现:

是通过内存叠加的方式实现的。

构造方法是不能被子类所继承的,但是也参与了产生子类对象的过程。

2个方面说明:1. 语法:构造方法的名字和类名字一致,父类和子类的

名字是不一样的。

2. 作用:构造方法是产生一个对象的,子类不可能有2

个对象。

也不能被重写。(都不能被继承了,肯定不能被重写了。)

当new子类对象的时候,会先调用父类的构造方法,产生父类的对象部

分,在调用子类构造,在父类对象下面叠加产生子类对象,合为子类对象。


***********************************************************************************************************

this:

1.this.***或者this.***() 表示每个对象本身的this引用。当前对象,可以看

本类中的所有属性和方法,可以看到继承与父类的的访问修饰符允许

看到的

2.this()代表调用同一个类的其他构造器。

注意:this()只能放在构造器的第一句。

super:

1.super()调用父类的指定构造,也只能放在构造器的第一句,和this()

不能同时出现。

2.super()有默认,不会写也有(调用父类无参),this()没有默认。

3.super.****** 当前对象的父类对象,访问不到本类定义的任何属性和方法

也可以看到继承父类的属性和方法,也受访问修饰符限制,和this相同。

综上:super可以看到的,this也可以看到。

this看到的 ,super就不一定看的到,所以this比较好。

















0 0
原创粉丝点击