关于JAVA类的初始化
(1)classLoad时候的初始化.
classLoad时根据书写顺序初始化class字段和方法在任何方法之前.并不初始化静态字段和方法,构造函数可作为static看只有当class被实例化并被使用或作为类变量使用时才初始化,仅初始化一次.
(2)class实例化时的初始化.
当class被实例化时,class字段根据构造方法以及类实例方法再次初始化各实例字段.
(3)构造函数的初始化.
当父类被子类继承时,子类实例化时会初始化子类的构造函数,若在子类构造函数中并未明确指出所调用的父类构造函数,将会缺省调用父类的缺省构造函数.此时父类的缺省构造函数必须存在,不然就会编译错误.
(4)在未初始化就调用编译将通不过
关于java的隐藏实现
关键字 private public protected 包级
例子:
class Initialize
{
private String s;
protected int i;
public boolean b;
char c;
String ss=f2();
private uu u;
private static String sStatic;
Initialize()
{
System.out.println(s+"\n"+i+"\n"+c+"\n"+b+"\n"+u+"\n"+ss);
System.out.println("this is father constructor!");
s="s";
i=1;
c='c';
b=true;
u=null;
}
public static void f()
{
System.out.println(sStatic);
System.out.println("this is static father function!");
}
public void f1()
{
this.f1();
}
public String f2()
{
return s;
}
}
class InitializeSon extends Initialize
{
InitializeSon()
{
System.out.println("this is son constructor!");
}
public static void main(String[] args)
{
InitializeSon init = new InitializeSon();
System.out.println(init.b+"\n"+init.c+"\n"+init.i);
Initialize.f();
//init.f1();
}
}}
分享到:
相关推荐
Java 数组初始化详解 Java 数组初始化是 Java 编程语言中的一种基本概念,它允许开发者创建和初始化数组,以便于存储和操作数据。在本文中,我们将对 Java 数组初始化进行详细的介绍,包括一维数组和二维数组的声明...
类--初始化块"); 39. } 40. // 构造器 41. public SubClass() { 42. System.out.println("子类--构造器"); 43. } 44. 45. public static void main(String[]...因此,掌握类的初始化顺序是每个Java开发者必备的知识点。
Java类初始化时机测试方法解析 Java类初始化时机测试方法解析是Java编程语言中一个重要的概念,涉及到类的加载、链接、初始化等过程。下面我们将对Java类初始化时机测试方法进行详细的解析。 首先,我们需要了解...
Java类的初始化顺序是编程中一个非常重要的概念,它涉及到对象的创建过程和成员变量的初始化。当一个Java类被实例化或者其静态成员被访问时,类的初始化过程就开始了。以下详细解释了Java类的初始化顺序: 1. **...
5. **初始化类的子类**。 6. **JVM启动时作为主类的类**。 例如,如果我们有一个`Singleton`类,其中包含静态变量和静态初始化代码块,如下所示: ```java class Singleton { private static Singleton singleton...
Java类初始化和实例化是程序开发中至关重要的环节,它涉及到类加载、静态变量的初始化以及构造器的执行。在Java中,类的初始化通常在以下几个情况发生: 1. 使用`new`关键字创建实例。 2. 访问或修改类的静态字段...
在Java编程语言中,程序初始化的顺序是一个关键概念,它涉及到类加载、对象创建以及执行流程的安排。了解这些顺序对于编写高效、无错误的代码至关重要。以下是对Java程序初始化顺序的详细说明: 1. **类加载阶段**...
静态初始化块用于初始化类级别的静态变量,它们只在类加载时执行一次。 2. **成员变量初始化**:接下来,初始化父类的非静态成员变量,这是通过调用父类的构造器实现的。Java规定每个子类实例在构造之前必须先调用...
首先,需要了解Java类初始化的基本规则,即在类的静态变量、静态初始化块、变量、初始化块、构造器这五个部分中,它们的初始化顺序依次是:静态变量、静态初始化块、变量、初始化块、构造器。这个顺序在单个类中是...
在Java编程语言中,初始化块是程序执行时用于初始化对象或类的重要机制。这里我们将深入探讨两种类型的初始化块:静态初始化块(Static Initializer Block)和对象初始化块(Instance Initializer Block)。这两种...
Java 变量初始化的时机可以分为两类:实例变量初始化和类变量初始化。 实例变量初始化 实例变量初始化可以在三个地方进行: 1. 定义实例变量的时候指定初始值; 2. 非静态初始化代码块中对实例变量指定初值; 3. ...
### Java中类的初始化顺序详解 #### 一、概述 在Java编程语言中,类的初始化是一个非常重要的概念。类的初始化涉及到多个方面,包括静态成员变量、实例成员变量、静态初始化块、实例初始化块以及构造函数等。本文...
它用于初始化类级别的静态变量。在`init`目录下的文件可能包含了不同静态初始化的示例。 3. **实例化阶段**: 当我们创建一个新的对象时,Java会进行实例初始化。首先,分配内存空间,然后调用构造函数。实例初始...
详细讲解java类中静态变量,普通标量,对象、基本类型的初始化顺序。
构造方法用于初始化类的新实例,普通方法执行特定任务,静态方法与类关联而非实例,抽象方法则在接口或抽象类中定义,需由子类实现。方法的参数传递、返回值和重载也是重要的知识点,理解这些能帮助我们编写更灵活...
Java类的初始化和实例化详解 Java类的初始化和实例化是Java编程语言中两个非常重要的概念,它们都是Java类生命周期的重要组成部分。下面我们将详细介绍Java类的初始化和实例化的过程,并解释其中的细节。 一、Java...
本文将详细介绍6种初始化Java List集合的方法,并通过代码示例帮助理解每种方法的使用和特点。 1. 常规方式 这是最常见的初始化List的方式,通过创建ArrayList实例并逐个添加元素。自JDK 7以后,可以省略泛型类型的...