JAVA面向对象:继承

java面向对象:继承

继承:

  1. 关键字 extends
  2. 子类可以调用父类中的属性和方法(public 或 protected修饰的,或没有加修饰符的) 当做自己的来使用。例:Cat 类继承了 Animal 类。Animal 中有私有的 foot 属性和私有的 test4 方法。Cat 类继承了 Animal类。从图片上看到了,子类不能直接访问父类的私有成员。
    在这里插入图片描述
    在这里插入图片描述
  3. 子类可以添加独有的属性和方法在这里插入图片描述

在这里插入图片描述

  1. 子类从父类中继承过来的某个方法不能满足子类需要的时候,可以在子类中重写(或者叫覆盖)父类的该方法在这里插入图片描述
    在这里插入图片描述
  2. 每一个类都有继承类,默认继承Object类(Object类是所有类的父类)
  3. java中只支持单继承,不支持多继承(C++支持多继承)。单继承保证了安全。(什么叫保证了安全,比如:如果支持多继承,那 C 类继承 A ,B这两个类,并且 A ,B中都有 test 方法,如果 C 类调用了 test 方法,那么调用的是谁的?)
  4. java中虽然只支持单继承,但可以间接实现多继承。比如 Student 类继承 Person 类, Person 类又继承了 Animal 类, 那 Student 类就间接的继承了 Animal 类。在这里插入图片描述在这里插入图片描述在这里插入图片描述
    10.继承在内存中的存储形式(一层一层) 在这里插入图片描述

拓展:Object类中的几个方法:

  1. hashCode() 将对象在内存中的地址经过计算得到一个 int 整数
  2. equals() 用来比较两个对象的内容 Object 默认效果是 == 等号比较基本类型(比较值) 可以比较引用类型(比较地址) 在Object中,equals() 方法默认效果比较的是地址,一般会重写 equals 方法。
  3. toString() 打印输出时将对象变成String字符串。一般也会重写 toString 方法
  4. getClass 获取对象对应类的类映射(反射)
  5. finalize() 该方法的权限修饰符是 protected 在对象被 Garbage Collection(垃圾回收器) 回收的时候默认调用执行的方法(类似C++的析构函数)
  6. clone() 该方法的权限修饰符是 protected 为了克隆对象

关于线程管理的:
7. wait() 线程进入挂起等待状态
8. notify() 线程唤醒
9. notifyAll() 唤醒所有

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值