通过代码实例解析JAVA类生命周期

所属分类: 软件编程 / java 阅读数: 48
收藏 0 赞 0 分享

代码

public class TestClass {

  public static int k=0;

  public static TestClass t1=new TestClass("t1");
  public static TestClass t2=new TestClass("t2");

  public static int i=print("i");

  public static int n=99;

  public int j=print("j");

  {
    print("构造块");
  }

  static {
    print("静态块");
  }

  public TestClass(String str) {
    System.out.println((++k)+""+str+"i="+i+"n="+n);
    ++n;
    ++i;
  }

  public static int print(String str){
    System.out.println((++k) +":" + str + "  i=" + i + "  n=" + n);
    ++n;
    return ++ i;
  }

  public static void main(String[] args){
    System.out.println("=========start============");
    TestClass t = new TestClass("init");
    System.out.println("=========end============");
  }
}

执行结果

1:j  i=0  n=0
2:构造块  i=1  n=1
3t1i=2n=2
4:j  i=3  n=3
5:构造块  i=4  n=4
6t2i=5n=5
7:i  i=6  n=6
8:静态块  i=7  n=99
=========start============
9:j  i=8  n=100
10:构造块  i=9  n=101
11initi=10n=102
=========end============

讲解

代码由上到下 依次执行

由static修饰的变量或方法是在方法区,属于类变量、类方法

new对象这个操作,new出来的对象在堆里 对象的引用在栈里

new出来的对象 方法快先构造方法执行

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

详解Spring依赖注入:@Autowired,@Resource和@Inject区别与实现原理

这篇文章主要介绍了详解Spring依赖注入:@Autowired,@Resource和@Inject区别与实现原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

了解spring中的CloudNetflix Hystrix弹性客户端

这篇文章主要介绍了了解spring中的CloudNetflix Hystrix弹性客户端,客户端弹性模式是在远程服务发生错误或表现不佳时保护远程资源(另一个微服务调用或者数据库查询)免于崩溃。,需要的朋友可以参考下
收藏 0 赞 0 分享

Spark学习笔记Spark Streaming的使用

这篇文章主要介绍了Spark学习笔记Spark Streaming的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

通过实例讲解springboot整合WebSocket

这篇文章主要介绍了通过实例讲解springboot整合WebSocket,WebSocket为游览器和服务器提供了双工异步通信的功能,即游览器可以向服务器发送消息,服务器也可以向游览器发送消息。,需要的朋友可以参考下
收藏 0 赞 0 分享

java虚拟机学习笔记进阶篇

在本篇内容里小编给大家分享了关于java虚拟机学习笔记的进阶内容,需要的朋友们跟着学习下。
收藏 0 赞 0 分享

java虚拟机学习高级篇

在本篇文章里小编给大家整理了关于java虚拟机学习高级篇的相关内容,有兴趣的朋友们跟着学习参考下。
收藏 0 赞 0 分享

java虚拟机中多线程总结

在本篇内容中小编给大家分享的是关于java虚拟机中多线程的知识点总结内容,需要的朋友们参考学习下。
收藏 0 赞 0 分享

java虚拟机多线程进阶篇总结

在本篇内容里小编给大家整理了关于java虚拟机多线程进阶篇的相关知识点内容,有兴趣的朋友们跟着参考下。
收藏 0 赞 0 分享

java数据结构和算法中数组的简单入门

在本文里小编给大家整理了关于java数据结构和算法中数组的简单入门知识点整理,需要的朋友们学习下。
收藏 0 赞 0 分享

java数据结构和算法中哈希表知识点详解

在本篇文章里小编给大家分享了关于java数据结构和算法中哈希表的相关知识点内容,需要的朋友们学习下。
收藏 0 赞 0 分享
查看更多