美文网首页
第十五天学习Java(面向对象的多态性)

第十五天学习Java(面向对象的多态性)

作者: Hoffnung_8164 | 来源:发表于2020-04-02 23:08 被阅读0次

2.1子类对象的创建过程

    实例化子类对象的过程

    调用子类的构造方法中,先调用了父类的构造方法,默认调用的父类的无参构造方法。

        1、子类的构造方法中,第一行一定是调用了父类的构造方法。

        2、如果没有显示的调用父类的构造方法,那么编译器会自动添加一个:super(),父类的无参构造方法。

        3、子类的构造方法中,既可以调用父类的无参构造方法,也可以调用父类的有参构造方法。

        4、父类的构造方法:

                无参构造:super();

                有参构造:super(参数);

    2.3方法的重写

        重载:一个功能方法的多种写法

        同一个类中,方法名必须一致,参数列表必须不同

        重写:继承结构

        在继承机构在,子类将父类已有的方法重新实现,这就叫方法的重写

        如果在子类中,存在方法的重写,那么默认调用的是重写之后的方法

        方法重写的规则

            1、继承结构中

            2、方法的声明:必须和父类一致

                方法名必须和父类一直

                参数列表必须和父类一致

                返回值必须和父类一致

            3、访问权限,不能比父类更加严格

            4、子类重写的方法,不能抛出比父类更大的异常

    2.4访问权限修饰符

        访问权限:就是在那能访问,通过访问权限修饰符来实现

            private:私有的,本类的

            默认的(default):注意:啥修饰符都不写,就是默认的,本类,同包下可以访问

            protected:受保护的,本类可以。同包下可以,不同包的子类可以

            public:没有限制,都可以使用

    使用原则:

        修饰类:只能是public default

        修饰成员:变量和方法:以上4个修饰符都可以

        局部变量:不能使用这些修饰符

    2.5对象的多态性

        2.5.1什么是多态

        其实就是事物的多种形态

        类的实例:new出来的-->对象

    2.6向上转型和向下转型

        向上转型:一个子类对象看成了父类类型,那么就失去了子类新增

        Animal a2 = new Cat();//

        a2,本身是子类对象,但是看成父类类型。

        那么能够访问父类的属性,不能访问子类的新增属性。

        能够访问方法,以及子类重写的方法。

三、总结

    1、子类对象的创建过程:(知道)

            1、子类的构造方法的第一行,一定是调用了父类的构造方法。如果没有,那么编译器自动添加:super();

            2、先调用父类的构造,然后再执行子类的构造。

   2、super关键字:(记住)

        用法一:指代父类的构造方法。super()。位于第一行。

        用法二:直接访问父类的属性和方法。

    3、方法的重写:(会用)

        概念:继承关系中,子类将父类已有的方法重新实现。

        英文:override

        规则:

    4、访问权限:访问权限修饰符,用于控制可见度。(知道)

        private:本类

        default:本类,同包

        protected:本类,同包,不同包(限于继承结构)

        public:没有限制

    5、对象的多态性:(未完待续。。)

        向上转型:将子类的对象,看成父类的类型。就"失去"了子类的新增。

相关文章

  • 第十五天学习Java(面向对象的多态性)

    2.1子类对象的创建过程 实例化子类对象的过程 调用子类的构造方法中,先调用了父类的构造方法,默认调用的父类的无参...

  • 第五天

    第五天-纠结的面向对象(Object-Oriented,OO) 今天直接进入了Java的面向对象的学习,面向对象是...

  • JAVA面向对象学习(多态性)

    多态性的理解和应用 1.1. 多态性的理解 多态性:在Java中,多态性是它的一大特性,可以理解成为是事物的多种形...

  • java 面试题(1)

    1:java 面向对象 面向对象的特征有哪些方面? 抽象,继承,封装:多态性。 抽象:抽象是将一类对象的共同特征总...

  • Java面向对象-多态性

    一、多态性 多态性的体现: 对象的多态性: 向上转型:程序会自动完成父类 父类对象 = 子类实例 向下转型:强...

  • Java面向对象的四大特征

    前言 Java做为一门“全面”面向对象的编程语言,提供了面向对象的四种基本性质:抽象性、封装性、继承性和多态性。面...

  • 多态

    面向对象特征之三:多态性 1、理解多态性:一个事物的多种形态 2、什么是多态性?对象的多态性:父类的引用指向子类的...

  • 《Java从小白到大牛》之第12章 继承与多态

    《Java从小白到大牛》纸质版已经上架了!!! 类的继承性是面向对象语言的基本特性,多态性前提是继承性。Java支...

  • 面向对象之------多态

    多态性,是面向对象中最重要的概念,在java中有两种体现:1.方法的重载(overload)和重写(overwri...

  • 软件测试读书笔记(佟伟光著)8

    面向对象软件测试 面向对象软件的特点及其对测试的影响 面向对象程序三大特征:封装性、继承性、多态性。封装是指将对象...

网友评论

      本文标题:第十五天学习Java(面向对象的多态性)

      本文链接:https://www.haomeiwen.com/subject/uyjqphtx.html