zoukankan      html  css  js  c++  java
  • 继承

    一个子类只能有一个父类,一个父类可以有多个子类
    子类继承了父类所有的成员(成员变量和方法)。子类也继承了父类的私有成员,但不可以直接访问这些继承过来的私有成员。如果一个父类的构造方法都是private的,那么就不能再创建它的子类了。

    子类的构造过程必须调用父类的构造方法,且必须写在第一行。
    调用父类的构造方法使用super()。调用自身的构造方法使用this()。
    如果子类的构造方法没有显式调用父类的构造方法,那么默认调用父类无参的构造方法。

    方法重写的两同两小一大原则:
    方法名相同,参数类型相同
    子类返回类型小于等于父类方法返回类型,
    子类抛出异常小于等于父类方法抛出异常,
    子类访问权限大于等于父类方法访问权限。

    一个基类的引用不可以访问其子类中新添加的成员(属性和方法)。

    代码及内存图

    class Father {
        int value = 100;
        void method() {
            System.out.println("父类方法执行");
        }
    }
    class Son extends Father {
        int value = 50;
        void method() {
            super.method();
            System.out.println(super.value);
            System.out.println(value);
        }
    }
    public class Demo {
        public static void main(String[] args) {
            Father f = new Son();
            System.out.println("属性重写访问的还是父类的属性"+f.value);
            f.method();
        }
    }
    代 码

    内存图

  • 相关阅读:
    实现一个简单的ConnectionPool
    并发连接MySQL
    C#里面滥用String造成的性能问题
    String.IndexOf
    C#代码中插入X86汇编
    正确理解Handle对象
    orleans发送广播消息
    log日志方法
    PHP 批量插入数据
    逻辑漏洞小结之SRC篇
  • 原文地址:https://www.cnblogs.com/Mike_Chang/p/9817949.html
Copyright © 2011-2022 走看看