`
一夕剑
  • 浏览: 55220 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

java基础之父类子类,static方法,构造函数 编译调用的优先顺序

    博客分类:
  • Java
 
阅读更多
package dd;

class Person {

Person() {
  System.out.println("Person...");
}

// 隐式方法
{
  System.out.println("Person hello...");
}

static {
  System.out.println("Person static...");
}
}



public class Test extends Person {

Test() {
  System.out.println("Test...");
}

{
  System.out.println("hello...");
}

static {
  System.out.println("static...");
}

public static void main(String[] args) {
  System.out.println("main...");
  new Test();
}
}





// Person static...
// static...
// main...
// Person hello...
// Person...
// hello...
// Test...

// 编译过程
// 1.父类静态属性
// 2.父类静态方法体
// 3.子类静态属性
// 4.子类静态方法体
// 5.父类非静态属性
// 6.父类非静态:隐式方法
// 7.父类构造函数
// 8.子类非静态属性
// 9.子类非静态:隐式方法
// 10.子类构造函数

转载自:http://blog.csdn.net/huaqi2820/article/details/5143928
分享到:
评论

相关推荐

    构造函数的继承问题 笔记

    为了确保子类能够正确地初始化其父类部分,需要特别注意构造函数的调用顺序与机制。 #### 构造函数的调用规则 根据题目中的描述,我们可以总结出关于构造函数调用的一些关键规则: 1. **默认构造函数的自动调用**...

    java基础测试卷.pdf

    }}A父类无参构造函数 子类无参构造函数B父类有参构造函数 子类无参构造函数C父类无参构造函数 子类有参构造函数D编译错误 这是一份Java基础测试卷,涵盖了Java语言的核心概念和语法。以下是对题目中涉及知识点的...

    JAVA理论知识基础复习

    每个子类构造方法的第一条语句,都是隐含地调用super(),如果父类没有这种形式的构造函数,那么在编译的时候就会报错。 十、多态性 多态性是一种编程技术,允许我们定义多个名称相同但参数类型或参数个数不同的...

    java中静态代码块与构造方法的执行顺序判断

    在Java编程语言中,了解静态代码块和构造方法的执行顺序是至关重要的,尤其是在处理类的初始化和对象的创建时。下面将详细解释这些概念及其执行逻辑。 首先,静态代码块(也称为静态初始化器)是由`static`关键字...

    Java基础理论习题

    在本例中,构造函数的执行顺序和重载的使用被展示出来。 6. char类型数据长度:Java中的char类型数据长度为16位,这符合Unicode字符编码的要求,每个char可以表示一个Unicode字符。 7. Java编译输出文件的后缀:...

    (完整word)Java基础测试题.doc

    Java是一种广泛使用的面向对象的编程语言,其基础...这些知识点是Java初学者必须掌握的基础,包括变量命名规范、类和对象的交互、继承、访问控制以及构造函数的使用等。熟悉并理解这些内容是成为Java开发者的关键步骤。

    JAVA基础考试题.docx

    【知识点详解】 1. 抽象类:在Java中,如果一个类包含了抽象方法,那么这个类...以上是对题目中涉及的Java基础知识的详细解释,涵盖了抽象类、同步、集合、线程、访问修饰符、异常处理、构造函数、多态性等多个方面。

    Java开发技术大全(500个源代码).

    invokeMethod.java 同一个类中调用方法示例 invokeOther.java 类的外部调用方法示例 invokeStaticMethod.java 调用静态方法示例 localVariable.java 演示局部变量 localVSmember.java 局部变量与成员变量同名...

    Java基础知识汇总

    2. 初始化执行顺序:父静态变量、父静态代码块、子静态变量、子静态代码块、父非静态变量、父非静态代码块、父类构造函数、子非静态变量、子非静态代码块、子类构造函数 五、构造函数: 1. 与类同名,无返回值 2. ...

    Java基础知识总结

    1. this 关键字:代表当前对象的引用,常用于区分成员变量和局部变量,调用构造函数,以及在方法中引用本类的其他方法和字段。 2. super 关键字:用于访问父类的成员,如字段和方法。在子类中,super关键字可以用来...

    Java 核心面试题

    构造函数是类的一种特殊的方法,它是在创建对象时被调用的。每一个类都有构造函数。在程序员没有给类提供构造函数的情况下,Java 编译器会为这个类创建一个默认的构造函数。Java 中构造函数重载和方法重载很相似。...

    AUST大二暑假Java实训第二天上课笔记

    在Java中,如果子类的构造函数没有明确指定要调用的父类构造函数,则会默认调用无参的父类构造函数。如果父类没有无参构造函数,则必须在子类构造函数中使用super()来显式地调用父类的构造函数。super关键字指向父类...

    java面试题

    - 选项:(A) 在类方法中可用this来调用本类的类方法 (B) 在类方法中调用本类的类方法时可直接调用 (C) 在类方法中只能调用本类中的类方法 (D) 在类方法中绝对不能调用实例方法 - 正确答案:(B) 在类方法中调用本类...

    Java基础试题(卷).doc

    4. **构造函数**:在Java中,子类继承父类时,如果子类没有提供构造函数,会自动调用父类的无参构造函数。`DefCon(int i)`表明子类有一个带参数的构造函数,所以`super(99);`用于调用父类的构造函数,传入参数。选项...

    JAVA基础面试题(经典).doc

    局部变量定义在方法、构造函数或块中,存储在栈内存中。 12. **this关键字** `this`关键字在实例方法中代表当前对象的引用,可以用来访问当前对象的成员变量或调用当前对象的方法。 13. **方法返回类型** 方法的...

    2016年Java面试题及回答.doc

    - **构造函数**:构造函数是在创建类的新实例时自动调用的特殊方法。每个类至少有一个构造函数,默认情况下,如果没有显式声明构造函数,Java编译器会自动生成一个无参构造函数。 - **构造函数重载**:允许在同一个...

    常考的java题(很多都是面试题)

    16. **构造函数调用**:创建子类对象时,构造函数会先调用父类的无参构造函数,然后执行子类的构造函数。若需调用父类的带参数构造函数,需使用super关键字。 17. **方法覆盖与重载**:覆盖发生在子类对父类方法的...

    CoreJava测试题.pdf

    Core Java测试题主要涵盖Java语言的基础知识,包括标识符、主类、Unicode编码、字节码文件、条件判断、数组声明、switch语句、类的关系、继承、方法重写、静态方法以及构造函数的使用。以下是对这些知识点的详细解释...

    Java100个面试题.doc

    Java面向对象编程(OOP)和Java基础知识点总结 Java是一种支持并发、基于类和面向对象的计算机编程语言。...在程序员没有给类提供构造函数的情况下,Java编译器会为这个类创建一个默认的构造函数。

    JAVA面向对象JAVA面向对象.doc

    - 子类构造函数如果没有显式调用父类构造函数,Java 编译器会自动在子类构造函数的第一行添加 `super()`,调用无参数的父类构造函数。如果父类没有无参数构造函数,子类必须显式调用其他带参数的构造函数,否则...

Global site tag (gtag.js) - Google Analytics