`

java类中成员的装载顺序你知道吗

    博客分类:
  • java
阅读更多

最近去参加了SCJP培训,相信对于绝大多数的JAVA工作者来说,SCJP所培训的知识应该是很基础的了。不过正所谓温故而知新嘛,其实通过这样的一次培训,还是能了解到不少新知识的。就像下面这个最简单的例子,你能不做试验,直接写出结果吗?

Display.java 用于显示的类,没什么好看的

public class Display {   
    public Display(String str) {   
        System.out.println(str);   
    }   
}  

 Super.java 父类

public class Super {   
  
    public static Display dis1 = new Display("父类静态区");   
       
    public Display dis2 = new Display("父类变量声明");   
       
    public Super() {   
        Display dis4 = new Display("父类构造方法");   
    }   
       
    {   
        Display dis3 = new Display("父类游离块");   
    }   
       
}  

 Sub.java 子类

public class Sub extends Super {   
  
    public static Display dis5 = new Display("子类静态区");   
       
    public Display dis6 = new Display("子类变量声明");   
       
    public Sub() {   
        Display dis8 = new Display("子类构造方法");   
    }   
       
    {   
        Display dis7 = new Display("子类游离块");   
    }   
       
    public static void main(String[] args) {   
        Sub sub = new Sub();   
    }   
}  

 在试验代码之前,还真不知道这游离块是什么时候调用和做什么用的。

分享到:
评论

相关推荐

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

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

    Java中对象初始化顺序的详细介绍

    在Java编程语言中,对象初始化是一个关键的概念,它涉及到类加载、对象实例化以及成员变量的赋值。本文将深入探讨Java中对象初始化的顺序,帮助开发者理解这一过程的细节。 首先,Java类的加载过程分为三个阶段:...

    Java中的static关键字

    Java 中的 static 关键字 ...在 Java 中,类装载器把一个类装入 Java 虚拟机中,要经过三个步骤来完成:装载、链接和初始化,其中链接又可以分成校验、准备和解析三步,除了解析外,其它步骤是严格按照顺序完成的。

    Java面试资料PDF(按章节顺序重新整理了一遍,顺序非视频中的顺序,但内容是全的)

    在Java面试中,掌握基础是非常关键的。以下是一些关于Java面试的知识点: ...这些知识点涵盖了Java面试中的基础部分,包括面向对象、JVM原理、类加载机制以及垃圾收集等。深入理解这些概念对于准备Java面试至关重要。

    Thinking in Java简体中文(全)

    6.9 初始化和类装载 6.9.1 继承初始化 6.10 总结 6.11 练习 第7章 多形性 7.1 上溯造型 7.1.1 为什么要上溯造型 7.2 深入理解 7.2.1 方法调用的绑定 7.2.2 产生正确的行为 7.2.3 扩展性 7.3 覆盖与过载 7.4 抽象类...

    马士兵Java面试资料PDF(按章节顺序重新整理了一遍,顺序非视频中的顺序,但内容是全的)

    - 装载:ClassLoader通过类名找到`.class`文件,并在内存中创建Class对象。 - 链接:包括验证、准备和解析阶段,分配内存,设置初始值,转换符号引用。 - 初始化:执行类的静态初始化代码。 5. **Java类加载器**...

    Thinking in Java 中文第四版+习题答案

    6.9 初始化和类装载 6.9.1 继承初始化 6.10 总结 6.11 练习 第7章 多形性 7.1 上溯造型 7.1.1 为什么要上溯造型 7.2 深入理解 7.2.1 方法调用的绑定 7.2.2 产生正确的行为 7.2.3 扩展性 7.3 覆盖与过载 7.4 抽象类和...

    java联想(中文)

    6.9 初始化和类装载 6.9.1 继承初始化 6.10 总结 6.11 练习 第7章 多形性 7.1 上溯造型 7.1.1 为什么要上溯造型 7.2 深入理解 7.2.1 方法调用的绑定 7.2.2 产生正确的行为 7.2.3 扩展性 7.3 覆盖与过载 7.4 抽象类...

    图文详解Java中class的初始化顺序

    首先,我们来看类的装载顺序。Java虚拟机(JVM)在运行时会使用类加载器来动态加载类。当类第一次被引用时(例如,创建类的实例,访问其静态字段或方法,或者通过子类引用父类),JVM就会开始装载这个类。装载过程中...

    Java程序员面试题V1.2答案.doc

    在 Java 中,每个类都可以继承自父类,通过使用 super 关键字,可以访问父类的成员变量和成员函数。 String 类和 StringBuffer 类 String 类和 StringBuffer 类是 Java 中两个常用的字符串处理类。String 类所定义...

    java竞赛题集锦

    7. **静态初始化块**:Java中的静态初始化块在类加载时仅执行一次,用于初始化静态成员。一个类可以有多个静态初始化块,它们按出现顺序执行。 8. **私有静态变量的访问**:即使变量被声明为私有静态的,它仍然可以...

    Thinking in java(中文)

    6.8 final关键字 6.8.1 final数据 6.8.2 final方法 6.8.3 final类 6.8.4 final的注意事项 6.9 初始化和类装载 6.9.1 继承初始化 6.10 总结 6.11 练习 <br>第7章 多形性 7.1 上溯...

    疯狂JAVA讲义

    学生提问:既然内部类是外部类的成员,是否可以为外部类定义子类,在子类中再定义一个内部类来重写其父类中的内部类? 211 6.7.4 局部内部类 211 6.7.5 匿名内部类 212 6.7.6 闭包(Closure)和回调 215 6.8 ...

    旅游公司Java高级工程师岗位面试真题

    Java 高级工程师面试中,JVM(Java虚拟机)加载Class文件的原理机制是一个常见的考点。...在面试中,能够深入讲解这些概念和机制,将展现出你对Java运行机制的深刻理解,从而提高面试成功的可能性。

    java 编程入门思考

    6.9 初始化和类装载 6.9.1 继承初始化 6.10 总结 6.11 练习 第7章 多形性 7.1 上溯造型 7.1.1 为什么要上溯造型 7.2 深入理解 7.2.1 方法调用的绑定 7.2.2 产生正确的行为 7.2.3 扩展性 7.3 覆盖与过载 7.4 抽象类...

    Java初学者入门教学

    6.9 初始化和类装载 6.9.1 继承初始化 6.10 总结 6.11 练习 第7章 多形性 7.1 上溯造型 7.1.1 为什么要上溯造型 7.2 深入理解 7.2.1 方法调用的绑定 7.2.2 产生正确的行为 7.2.3 扩展性 7.3 覆盖与过载 7.4 抽象类...

    Java面向对象程序设计笔记

    在Java中,类是定义对象的蓝图,包含数据(字段)和行为(方法)。构造函数是创建对象时调用的特殊方法,用于初始化对象的状态。Java自动管理内存,通过垃圾回收机制来避免内存泄漏。Java源文件通常包含一个公共类,...

Global site tag (gtag.js) - Google Analytics