zoukankan      html  css  js  c++  java
  • Java学习

    源代码:

    class Grandparent
    {

    public Grandparent()
    {

    System.out.println("GrandParent Created.");
    }

    public Grandparent(String string)
    {

    System.out.println("GrandParent Created.String:" + string);
    }

    }

    class Parent extends Grandparent
    {

    public Parent()
    {

    //super("Hello.Grandparent.");

    System.out.println("Parent Created");
    // super("Hello.Grandparent.");

    }

    class Child extends Parent
    {

    public Child()
    {
    System.out.println("Child Created");

    }

    }

    public class TestInherits
    {

    public static void main(String args[])
    {

    Child c = new Child();
    }

    }

    结论:通过super调用基类构造方法,必须是子类构造方法中的第一个语句。

    为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来?

    子类继承了父类所有的对象和成员变量,既然如此肯定要先初始化,才能正确使用父类的对象和成员变量。同样的,反过来说,父类并不知道会有什么子类,也不知道子类有什么特殊的对象和成员变量,自然也就无法提前初始化了。

  • 相关阅读:
    html+css动态篇
    html+css定位篇
    首页的css
    display详细说明
    html+css 布局篇
    html+css杂记
    JS与ES的关系
    H5本地存储
    JavaScript面向对象
    JavaScript执行上下文
  • 原文地址:https://www.cnblogs.com/wrljzb/p/13884216.html
Copyright © 2011-2022 走看看