zoukankan      html  css  js  c++  java
  • (面试)涉及到继承和类加载

    有A,B,Main三个类如下:

    public class A
    {
     A()
     {
      System.out.println("A");
     }
    }

    public class B extends A
    {
     B()
     {
      System.out.println("B");
     }
    }

    public class Main extends B
    {
     Main()
     {
      System.out.println("Main");
     }

     private A a = new A();
     private B b = new B();

     public static void main(String[] args)
     {

      System.out.println("test");
      }

    }

    输出:

    test   ----解释:main方法是静态方法,它属于类Main,而不是实例,因此Main不用实例化,直接调用

    如果将main方法改为:

    public static void main(String[] args)
     {

      System.out.println("test");

    new Main();   //实例化对象Main
      }

    输出:

    test
    A   -----初始化父类A
    B   -----初始化父类B
    A   -----初始化属性 private A a = new A();
    A   -----初始化属性 private B b = new B();

    B
    Main ---- 调用构造函数

  • 相关阅读:
    RxJava+okhttp3
    RetrofitOkHttp网络请求
    布局111
    网络请求展示数据
    一级列表展示购物车
    终极MVP二级购物车
    将博客搬至CSDN
    nyoj-开灯问题
    nyoj-数乌龟
    nyoj 正三角形的外接圆面积
  • 原文地址:https://www.cnblogs.com/qqzy168/p/3301468.html
Copyright © 2011-2022 走看看