zoukankan      html  css  js  c++  java
  • 继承类创建的执行顺序

    1.一般情况父类静态变量以及静态程序块 --- 子类的静态变量以及静态程序块 ---main()(如果是从main里面执行)---- 父类非静态代码块 --- 父类中构造方法 --- 子类中非静态代码块 --- 子类中构造方法 

    (首先是加载main所在的类(类如果有父类,会先执行父类的静态成员初始化)初始化其中的静态成员和域,,然后是main方法中执行)

    2.子类重写父类方法,父类中执行该方法时候会执行子类的方法

     1 class Super {
     2     int i = 10;
     3     
     4     {
     5         print();//都将执行子类方法
     6     }
     7 
     8     Super() {
     9         print();//都将执行子类方法
    10         i = 20;
    11     }
    12     //并且此时的子类属性未初始化完成,此时j=0;
    13 
    14     void print() {
    15         System.out.print(i);
    16     }
    17 }
    18 
    19 class Sub extends Super {
    20     int j = 30;
    21 
    22     Sub() {
    23         print();
    24         j = 40;
    25     }
    26 
    27     void print() {
    28         System.out.print(j);
    29     }
    30 
    31     public static void main(String[] args) {
    32         new Sub();//输出结果是0030
    33     }
    34 }
  • 相关阅读:
    android之Activity回传数据
    Android之Activity启动模式
    桥接模式
    Android之Activity跳转
    Android多线程文件下载
    代理模式
    适配器模式
    vs2010 入门程序
    文件动态打开获取数据
    项目测试一 批量读取数据到数组
  • 原文地址:https://www.cnblogs.com/straybirds/p/5208453.html
Copyright © 2011-2022 走看看