java的运行流程

宝鸡大叔

宝鸡大叔

2016-02-19 17:04

今天图老师小编给大家精心推荐个java的运行流程教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

  一,我们所看不到的:

  1,如果java文件没有package,就默认给文件加上"无名"package;

  2,默认导入java.lang包,所以我们的java程序中可以使用Sting,Math,Integer等类,包括一些异常类;

  3,如果生成的类没有父类,则为这个类隐式加上父类:Object;因此,包括Object中的许多方法可以使用;

  4,字段的初始化;

  二,我们所看的到的:

  既然看的到,就先看程序运行结果:

  

public class JRun1 {
public JRun1() {
System.out.println(" 构造函数");
}
static
{
System.out.println("static{}");
}
{
System.out.println("{}");
}
public static void main(String[] args) {
System.out.println("main()");
}
}

  运行结果:

  static{}

  main()

  显然,程序运行时,先运行:

  

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

  再调用main();

  注意: 我们可以得到一个副产品:不用main方法也能运行的程序:

  

public class JRun1 {
static
{
System.out.println("no main()");
System.exit(0);
}
}

  如果我们在类中建立一个对象:

  

public class JRun1 {
public JRun1() {
System.out.println(" 构造函数");
}
static
{
System.out.println("static{}");
}
{
System.out.println("{}");
}
public static void main(String[] args) {
System.out.println("main()");
new JRun1();
}
}

  运行结果:

  static{}

  main()

  {}

  构造函数

  从而,我们得出:

  建立一个非主类对象,顺序为:静态初始化块static{}--初始化块{}--构造函数constructor;

  那么,牵涉到继承,运行流程又如何?

  看程序:

  

class JRun1Father{
JRun1Father(){
System.out.println("父类构造函数");
}
static{
System.out.println("父类静态初始化块");
}
{
System.out.println("父类初始化块");
}
}
public class JRun1 extends JRun1Father{
public JRun1() {
System.out.println("子类构造函数");
}
static
{
System.out.println("子类静态初始化块");
}
{
System.out.println("子类初始化块");
}
public static void main(String[] args) {
//System.out.println("主方法)");
new JRun1();
}
}

  运行结果:

  父类静态初始化块

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  子类静态初始化块

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  父类初始化块

  父类构造函数

  子类初始化块

  子类构造函数

  所以,牵涉到父类:父静态--子静态--父初始化及构造--子初始化及构造;

  注意:初始化块和构造是接连运行的,不会父类子类交替.

展开更多 50%)
分享

猜你喜欢

java的运行流程

编程语言 网络编程
java的运行流程

运行headless Java服务器

编程语言 网络编程
运行headless Java服务器

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Java入门(7)Java流程控制

编程语言 网络编程
Java入门(7)Java流程控制

如何配置Java Server Page运行环境

编程语言 网络编程
如何配置Java Server Page运行环境

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

[JAVA100例]002、Java流程控制

编程语言 网络编程
[JAVA100例]002、Java流程控制

使用Resin3.0配置运行Java Servlet

编程语言 网络编程
使用Resin3.0配置运行Java Servlet

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Excel计算所占比例的方法

Excel计算所占比例的方法

[JAVA100例]001、Hello,Java

[JAVA100例]001、Hello,Java
下拉加载更多内容 ↓