黑马程序员技术交流社区

标题: 第九天学习笔记 [打印本页]

作者: wubo46    时间: 2016-5-20 22:02
标题: 第九天学习笔记
多态
        多态的前提:1、要有继承
                                2、要有方法重写
                                3、父类引用指向子类对象

多态中访问成员变量
                                        编译看左边,运行看左边
多态中访问成员方法
                                        编译看左边,运行看右边
多态中访问静态方法
                                        编译看左边,运行看左边
                       

多态的好处和弊端
                                好处:提高了代码的扩展性
                                弊端:不能使用子类特有的属性和行为
                                ClassCastException 类型转换异常
                                instanceof 判断前边的引用是否后边的数据类型

抽象类
                abstract 抽象
                用来修饰类,也可以修饰方法
抽象类的子类
                1、要么子类也是抽象的 //没有什么意思的
                2、要么重写抽象父类中抽象方法

抽象类中成员变量
                                可以是常量也可以是变量
                                抽象类中的抽象方法,我们继承之后需要重写抽象方法(重写之后就是一个具体的方法)。

abstract跟哪些关键字不能共存
                                                        static:因为abstract修饰的方法没有方法体,类名点调用没有意思
                                                        final:fianl是不能被继承,也就不能被重写,abstract要求子类必须重写方法,矛盾
                                                        private:abstract要求子类去重写,被private修饰之后子类不能重写了。

接口
                interface的关键字
                格式: interface 接口名 {
                }
                实现接口 implements
                class Test implements 接口名 {
                        //实现接口里的抽象方法,接口里的方法都是抽象的。
                }
                接口可以多实现
接口中的成员变量
                                public static final 全都是常量
接口中的成员方法
                                全都是抽象的,都是公开的

类与类之间的关系
                                单继承,可以多层继承
类与接口之间的关系
                                实现的关系。可以多实现。
接口与接口之间的关系
                                继承关系。可以单继承,可以多继承
                               
抽象类和接口之间的区别
                                        方法:
                                                抽象类中方法可以是非抽象的。
                                                接口中方法都是抽象
                                                抽象类中有构造方法
                                                接口中没有构造方法
                                        变量:
                                                抽象类既可以是常量也可以是变量
                                                接口中都是常量
                                       
                                        设计理念来说,抽象类是“is a”,接口就是“like a”



作者: TCK8888    时间: 2016-5-20 22:37
    顶一个
作者: wubo46    时间: 2016-5-20 22:38
TCK8888 发表于 2016-5-20 22:37
顶一个

回顶一下
作者: sasyun    时间: 2016-5-20 23:09
学习下,,,,,
作者: tianzhu2725    时间: 2016-5-21 00:54
好详细啊我们今天也学着这些
作者: 小红花    时间: 2016-5-21 09:23
整理的不错

作者: huburt    时间: 2016-5-21 11:29
顶~~~~~~~~~~~~~~~~~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2