继承和多态

2019-10-17  本文已影响0人  月如钩dgf

1,继承可以解决编程中代码冗余的问题是实现代码重用的手段之一,

            java支持单根继承,表达的是 is   a 的关系,每个类只能有一个直接父类

            继承的语法【访问修饰符】 class <subclass> extends <superClass>{}

            子类无法继承父类的构造方法

2,使用super关键字调用父类成员,是用来引用被屏蔽的成员变量或者成员方法(super用在子类中)

3,object类

        是所有类的父类在java中所有的java类都直接或者间接继承了java.lang.Object类

        Object类中的equals()方法用来比较两个对象是否是同一个对象,若是返回true,而字符串   的equals()方法是用来比较两个字符串的值是否相等,java.lang.String类中重写了Object类中的equals方法

4,多态

        方法重写实现多态

        抽象类不能实例化

        子类如果不是抽象类则必须重写抽象类的全部抽象方法

        abstract修饰符不能和final修饰符一起使用

        abstract修饰的抽象方法没有方法体

        private关键字不能用来修饰抽象方法

1,向上转型:

        语句:<父类型>   <引用变量名>  = new <子类型>();

        注:将一个父类的引用指向一个子类的对象称为向上转型系统自动进行类型转换,此时通过父类引用变量调用的方法是子类覆盖或者继承了父类的方法不是父类的方法

2,向下转型

        语句:<子类型> <引用变量名> = (<子类型>)<父类型的引用变量>

       注:如果如果不是转换成真实的子类类型会出现类型转换异常(可以用instanceof运算符判断)

多态的应用

        可替换性:多态对已有的代码具有可替换性

        可扩充性:增加新的子类不影响已存在类的多态性,继承性

        接口性:多态是父类向子类提供一个共同接口由子类去实现

        灵活性:多态在应用中体现了灵活多样操作提高使用

        简化性:简化应用软件代码编写和修改过程


每天进步一点点!

上一篇 下一篇

猜你喜欢

热点阅读