关于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 数组初始化 详解 doc
对java类初始化以及顺序,详解,由于转载仅供大家参考!
所有构造方法执行顺序如下: 执行父类的构造方法。没有继承默认继承的Object。... // 单独一行的初始化算一个代码块,这个是初始化a的代码块 private String a = "hello"; // 这个只是声明变量,并b不算代码块
主要介绍了Java类初始化和实例化中的2个“雷区”,大家要注意,感兴趣的小伙伴们可以参考一下
详细讲解java类中静态变量,普通标量,对象、基本类型的初始化顺序。
摘要视图订阅曹胜欢欢迎关注微信账号:java那些事:csh624366188.每天一篇java相关的文章登录 | 注册学习专区(140)Java程序员从笨鸟到菜
介绍一下java程序初始化的顺序,这会对您以后的开发所有帮助
主要介绍了Java类初始化时机测试过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip...
44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip...
主要介绍了Java类的初始化,结合具体实例形式较为详细的分析了java类初始化的常见情况、操作技巧与相关注意事项,需要的朋友可以参考下
主要介绍了简单了解java类的初始化以及类的实例化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
一个java代码初始化具体过程的的demo
主要介绍了6种方法初始化JAVA中的list集合,文中讲解非常详细,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
具体内容见博客
Java 的初始化问题和其他高级语言类似。一个明显不一样的地方是体现在它的类加 载过程。传统的编程语言包括C++等,程序是作为启动过程的一部分立刻被加载,而Java 的 类加载只在需要使用程序代码时才会被加载(每个...
《Java程序设计基础教程》按内容分成五篇:Java 语言入门篇、面向对象篇、数据流应用篇、Java GUI编程篇和高级应用篇,共有二十四讲组成。
Java初始化块Java初始化块
NULL 博文链接:https://yuu1987.iteye.com/blog/1113142