栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

day24 继承的本质 继承注意点 super跟this的区别和图解 继承构造器的区别 不同修饰符的排序

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

day24 继承的本质 继承注意点 super跟this的区别和图解 继承构造器的区别 不同修饰符的排序

继承 概述

JAVA中类只有单继承,没有多继承(就是只能继承一个父类)

(继承财产相当于继承一个爸爸的)

继承的本质是对某一批类的抽象。

继承的好处:
    对于功能相似的类代码。可以通过继承,来减少重写代码的工作量继承后可以通过重写方法,来变成适合的使用的类。(跟第3点是一样的)继承后更方便我们延展代码,方便扩展和维护。
关键字 extends

extend的意思是“扩展”,子类是父类的扩展

继承的注意点:
    儿子只能继承(extends)一个父亲(父类)的财产需要注意修饰符的引用,和该类的位置。才可以看可不可以继承一般同个包下,除了私房钱(private修饰),其他都可以继承
继承的本质代码

Father(父类)

package com.ckw.oop.demoInherit;

public class Father {
    int money = 10_0000_0000;
    void idea(){
        System.out.println("我是爸爸,我有钱");
    }
}

Son(儿子)

package com.ckw.oop.demoInherit;

public class Son extends Father{

}

Appliction(执行)

package com.ckw.oop.demoInherit;

public class Appliction {
    public static void main(String[] args) {
        Son xm =new Son();
        xm.idea();
    }
}
//结果:我是爸爸,我有钱
//
继承树快捷键(家族树)

ctrl+H

Object类(祖父类)

所有的类都是继承了Objerct类。也就是老祖宗。

就算什么都不写,老祖宗也会继承一些东西给你。

super 关键字(指向父类修饰符)

super修饰符下,儿子就可以在自己也有同样属性和变量时,应用到父亲的某些变量或者方法。

小结:super 跟 this,都是在同样变量名下,明确指明引用方向。super代表指向父类,this指向本部

super 跟 this 区别

this 是 :

    指向 本部类 的变量(属性)。没有继承也可以用(前提)

super 是 :

    指向 父亲类 变量(属性)。(如果是私有定义就拿不到。)没有继承用不了(前提)
运用于以下情况:

当所有变量名或者属性名或者形式参数都是一样的时候,使用super跟this可以明确指向父类或者本类。

同变量名 做 修饰符的图解

不同变量名 不做修饰的图解

当变量名不重复不做修饰的时候,子类存在父类非私有的变量名,该变量指向父类。(常规应该用修饰符标示出来)

情况总结:

用this跟super可以明确引用是哪里的值。便于方法重写的时候做分辨

不包含以下情况:

父类如果该变量被修饰为私有时,super就拿不到该变量赋值。

super随着修饰符的等级的降低而取不到值。

构造器的默认继承:

如果继承了,(缺省)构造器会自动隐形生成super()方法。继承父类。就是子类什么都不写,还是会有内容。

如果父类构造器变有参数构造,继承他的子类,子类就要显性写出构造器,并定义一个有参数的super(参数)方法。

构造器super()方法的报错
    继承下不能用this()方法

    如果父类是有参数构造器

重写构造器的注意点:
    super()只能在构造器的第一列。this()也只能在构造器的第一列。跟super()一山不容二虎。
不同修饰符的权限

public 整个项目都可以用(现金)

protected 只在不同包之间可以用(银行存款)

(缺省)default 只可以在同个包之间使用(本地现金)

private 只可以在类内部使用(私房钱)

排序:public > protected > 缺省 > private
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/756421.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号