JAVA基础学习知识之 继承

父类SuperClass 子类 SubClass

1.继承是面向对象的特点之一(封装,继承,多态,抽象)。作用是程序的复用和分离。

2.JAVA 的继承是单一继承,允许拥有一个父类,但是父类也可以拥有一个父类。

好处是能更好的层次化和清晰化的分析类。缺点则相对于多重继承没有那么的多元化和丰富化。(JAVA为了弥补这一缺点则是用了接口)

3.任意一个类,在没有明确写出extends 谁的时候,都是extends Object. Object类,是JAVA所有类(包括数组)的根类。

4.Object类的有8种方法

  1).getClass  该方法不能被重写

  2).gashCode 得到哈希值

  3).toString  返回当前对象的字符串描述,在写程序的时候,经常会重写该方法

  4).equels 判断是否相等

  5).finalise  销毁对象,被GC (java垃圾回收机制)调用,不要重写他

  6).wait   命令停止,该方法不能被重写,用于多线程中

  7).notify   唤醒命令,该方法不能被重写,用于多线程中                                      

  8).Clone  克隆一个对象,这是四种创建对象的方法之一

 

5. 方法的重写:

  1)重新修改父类的方法,只能改变访问修饰符让其声明范围不小于父类方法的修饰符,不改变返回类型,不改方法名,不改变参数,叫做方法的重新。

  2)父类方法重写后,想调用父类的方法而不是重写后的方法,则需要用super.***();

 

6. 继承内存机制是内存叠加。先分配父类对象空间,在其内存位置后面分配子类对象空间,但始终只会拥有一个对象。

 

7. 关于继承中的 this 和super

  this.调用本类的方法和属性  用法是this.***;  this.***();

  可以任意调用本类方法和属性, 也可以调用父类的方法和属性,但是受到访问修饰符影响。尽量用他

 this(); 调用本类构造器,只能写入构造器的第一句。并不会默认写入

 

 super. 不能调用当前内的方法和属性,调用父类的方法和属性也要受到访问修饰符的影响。

  用法是super.***; super.***();  仅用于父类方法重写后,想调用父类的方法而不是重写后的方法

  super();调用父类构造器,当子类没有写的时候,系统会默认写入一个无参的父类构造器的调用方法 super();  若是父类没有无参构造器且子类 没有写入 super(**); 有参。则会报错。  同this() 一样,只能写在构造器的第一局。

This() 和super() 只能存在一个在构造器里面。

8. 父类的构造方法 是不会被子类继承的。

 

9. 关于final

  1)声明一个常量

  2)声明一个最终类,该类是不能被继承。String 就是一个常见的典型的最终类。

  3)声明一个最终方法,该方法不能被重写

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值