zoukankan      html  css  js  c++  java
  • 《Java入门第二季》第四章 多态

    Java 中的多态
    1、引用的多态:意思就是父类的句柄既可以持有本类的对象,也可以持有子类的对象。

    2、方法的多态:注意点是当父类句柄持有子类对象的时候,无法调用子类特有的方法。

    多态中的引用类型转换
    1、重写override的时候有个典型的向下转换,并且在转换之前执行了检查。

    2、检查向下转换安全性的另一个方法:父对象 instanceof 子类。

    Java 中的抽象类
    1、通常用接口取代抽象类:a)两者都可以作为子类对象的持有者。b)两者都可以约定子类必须实现的方法。c)实现接口相比继承抽象类复杂度更低。

    2、接口和抽象类的差异在于:抽象只能单继承,而一个类可以实现多个接口。

    Java 中的接口
    1、接口规定了一批类所需要遵守的规范,规定类里必须提供某些方法。

    2、接口中的属性都是常量,即使定义时不显示设置public static final,系统也会自动加上。(并且不加是一种比较好的习惯,不做多余的事情。)

    3、接口中的方法都是抽象方法遵守一个接口就必须实现接口中的方法

    4、使用接口:类实现接口、作为对象持有者、与匿名内部类配合使用

    5、接口的命名规范:要与类区分,通常I开头或者InterfaceXX

    ps:参考阿里的开发手册,接口规范Xxx配合XxxImpl,方法直接void f()而不要加上public abstract等前缀,接口常量也是一样,不要加多余的前缀。

    匿名内部类(经常与接口配合使用)

    /**
     * Created by xkfx on 2017/3/11.
     */
    public class TestAnimal {
        public static void main(String[] args) {
            // 使用匿名内部类的第一种方式
            Animal a1 = new Animal() {
                @Override
                public void run() {
                    System.out.println("使用匿名内部类的第一种方式");
                }
            };
            a1.run();
            // 使用匿名内部类的第二种方式
            new Animal() {
                @Override
                public void run() {
                    System.out.println("使用匿名内部类的第二种方式");
                }
            }.run();
        }
    }
    /**
     *         ┏┓   ┏┓
     *        ┏┛┻━━━┛┻┓
     *        ┃       ┃  
     *        ┃   ━   ┃
     *        ┃ >   < ┃
     *        ┃       ┃
     *        ┃... ⌒ ... ┃
     *        ┃       ┃
     *        ┗━┓   ┏━┛
     *          ┃   ┃ Code is far away from bug with the animal protecting          
     *          ┃   ┃   神兽保佑,代码无bug
     *          ┃   ┃           
     *          ┃   ┃        
     *          ┃   ┃
     *          ┃   ┃           
     *          ┃   ┗━━━┓
     *          ┃       ┣┓
     *          ┃       ┏┛
     *          ┗┓┓┏━┳┓┏┛
     *           ┃┫┫ ┃┫┫
     *           ┗┻┛ ┗┻┛
     */

    UML 简介(用的并不多)

    1、用例图:表达用户需求。

    2、序列图:对象间的交互关系。

    3、类图:最常用。

  • 相关阅读:
    zabbix_server调优
    zabbix图形刷新延迟解决
    ntp同步报错解决
    python3.5 字典遍历
    python3.5 append使用
    python3.5 元组
    pycharm修改代码后第一次运行不生效解决
    Intellij IDEA 使用Spring-boot-devTools无效解决办法
    TOP命令各个参数代表意义详解
    ps命令各个内容信息详解
  • 原文地址:https://www.cnblogs.com/xkxf/p/6535961.html
Copyright © 2011-2022 走看看