`

构造器,调用顺序

 
阅读更多

java 中的 构造器 

 

定义一个 base class 

“public class base {
    int _a ;
    int _b ;
    public base(int a ,int b ) {
        _a = a;
        _b = b;
        System.out.println("__base you");
    }
    
}

public class sub extends base {

    public static void main(String[] args) {
        sub a = new sub();
    }
}

如果 父类 没有无参构造方法 子类继承父类  编译不通过 父类加上 无参构造方法 子类继承 可以编译通过

 

顺序:

 

class A

{

    A() //构造函数

    {

        System.out.println("class A Constructor!");

    }

}

 

class B

{

    B() //构造函数

    {

        System.out.println("class B Constructor!");

     }

}

 

public class C extends A    //类A是类C的父类

{

    B b = new B();   //类C中有B类对象作为成员变量

    C()

     {

        System.out.println("class C Constructor!");

     }

 

    public static void main(String args[])

    {

        C c = new C();

    }

}

父类的  优先

 

初始化成员变量  

 

本身 的构造函数

 

 

分享到:
评论

相关推荐

    java 静态块实例块构造器调用

    java 静态块实例块构造器调用在继承中的调用顺序,包括代码及注释

    深入理解java构造器机理

    java构造方法是java类中最重要的一个概念,这篇文档涵盖了,java对象初始化过程中构造器调用的顺序,及作用。

    子类对象构建调用父类的构造方法

    程序中描述了子类对象构建调用父类的构造方法,以及类变量和实例变量创建的不同过程

    杰普学习corejava总结笔记

    2.构造器执行顺序 1.类加载,同时初始化类中静态的属性(赋默认值) 2.执行静态代码块 3.分配内存空间,同时初始化非静态的属性(赋默认值) 4.调用父类构造器(注意调用父类构造器之前已经给父类的非静态的属性显示...

    编程思想下篇

    5.4.1 在构造器中调用构造器 5.4.2 static的含义 5.5 清理:终结处理和垃圾回收 5.5.1 finalize()的用途何在 5.5.2 你必须实施清理 5.5.3 终结条件 5.5.4 垃圾回收器如何工作 5.6 成员初始化 5.6.1 指定初始化 5.7 ...

    Java设计中的Builder模式的介绍

    产品类非常复杂,或者产品类中的调用顺序不同产生不同的作用 当初始化一个对象特别复杂,如参数多,且很多参数都具有默认值时 下面从一个Person例子进行分析重叠构造器模式、JavaBeans模式、Builder模式的使用。...

    BigDecimal 加减乘除运算

    Java中BigInteger的数学运算,BigDecimal 加减乘除运算,Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。...构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。

    C#5.0本质论第四版(因文件较大传的是百度网盘地址)

    5.7.5 构造器链:使用this调用另一个构造器 168 5.8 静态成员 172 5.8.1 静态字段 172 5.8.2 静态方法 174 5.8.3 静态构造器 175 5.8.4 静态属性 176 5.8.5 静态类 177 5.9 扩展方法 ...

    2021年华为杯数学建模竞赛E题信号干扰下的超宽带精确定位(国一)

    数据预处理相关(以调用顺序排序) - clean_data.py:使用高斯σ原则和k-means聚类算法对原始数据进行预处理,并转化为二维矩阵存储。 - process_tag.py:将靶点的真实坐标转化为二维矩阵数据类型存储。 模型求解...

    Thinking in java4(中文高清版)-java的'圣经'

    5.6.1 指定初始化 5.7 构造器初始化 5.7.1 初始化顺序 5.7.2. 静态数据的初始化 5.7.3. 显式的静态初始化 5.7.4. 非静态实例初始化 5.8 数组初始化 5.8.1 可变参数列表 5.9 枚举类型 5.10 总结 第6章 访问权限控制 ...

    达内2011年在线测评系统5天全部源码ELTS_day01-day05

    1 提供构造器 构造器中调用 init()方法 2 init() 方法用来初始化全部界面组件, 就是画界面的 3 添加showView() 用来显示界面 4 提供LoginFrameTest 用来为LoginFrame 进行单元测试 2 完成界面初始化代码 1 ...

    key-pattern-logger:简单的工具,用于侦听按特定顺序敲击的键并在模式匹配时调用回调

    一个简单的工具,它监听按特定顺序敲击的键,并在模式匹配时调用回调。 基本示例 keyPatternLogger = new KeyPatternLogger ( { pattern : [ "a" , "b" , "c" ] , callback : function ( ) { console . log ( ...

    突破程序员基本功的16课.part2

    2.2 父类构造器 2.2.1 隐式调用和显式调用 2.2.2 访问子类对象的实例变量 2.2.3 调用被子类重写的方法 2.3 父子实例的内存控制 2.3.1 继承成员变量和继承方法的区别 2.3.2 内存中子类实例 2.3.3 父、子类的...

    C#与.NET技术平台实战演练.part2

    多态与接口11-l扩充基础类的功能11-1-l继承的语法11-l-2简单的UML描述11-2扩充类的继承11-2-1使用访问修饰符控制存取权限11-2-2protected成员的继承11-3调用基础类的构造器声明构造器ll-4改写基础类的方法11-4-1定义...

    C#与.NET技术平台实战演练.part1

    多态与接口11-l扩充基础类的功能11-1-l继承的语法11-l-2简单的UML描述11-2扩充类的继承11-2-1使用访问修饰符控制存取权限11-2-2protected成员的继承11-3调用基础类的构造器声明构造器ll-4改写基础类的方法11-4-1定义...

    C#实验报告(实验报告一)

    (3) 定义默认构造函数,实现构造函数重载,测试构造函数和析构函数的构造和析构顺序 (4)根据人类,派生一个学生类(Student),增加属性:学校(school)、学号(number)、平均成绩、语数外各科成绩(scores,一个...

    疯狂JAVA讲义

    学生提问:为什么我创建Java对象时从未感觉到java.lang.Object的构造器被调用过? 150 5.7 多态 151 5.7.1 多态性 151 5.7.2 引用变量的强制类型转换 152 5.7.3 instanceof运算符 154 5.8 继承与组合 154 ...

    MFC的程序框架剖析

    (2)调用全局应用程序对象的构造函数,从而就会调用其基类CWinApp的构造函数,以完成应用程序的一些初始化 (3)进入WinMain函数 (4)进入消息循环 20、MFC程序的主要过程 theApp-> CTestApp::CTestApp构造函数-> ...

    LuaBind 源码 (Lua增强库)

    它和 luabind::module 类似,除了构造器 没有lua_State* 输入参数.用例如下: module(L, "my_library") [ // declarations namespace_("detail") [ // library-private declarations ] ]; 你可能会想到,下面两个...

Global site tag (gtag.js) - Google Analytics