zoukankan      html  css  js  c++  java
  • java代码块

    静态代码块:就是一个有静态关键字标示的一个代码块区域。定义在类中。
    作用:可以完成类的初始化。静态代码块随着类的加载而执行,而且只执行一次(new 多个对象就只执行一次)。如果和主函数在同一类中,优先于主函数执行。

    静态代码块、构造代码块、构造函数同时存在时的执行顺序:静态代码块 -->构造代码块 --> 构造函数;

    Person p = new Person();

    创建一个对象都在内存中做了什么事情?

    1先将硬盘上指定位置的Person.class文件加载进内存。

    2执行main方法时,在栈内存中开辟了main方法的空间(压栈-进栈),然后在main方法的栈区分配了一个变量p。

    3在堆内存中开辟一个实体空间,分配了一个内存首地址值。new

    4在该实体空间中进行属性的空间分配,并进行了默认初始化。

    5对空间中的属性进行显示初始化。

    6进行实体的构造代码块初始化。

    7调用该实体对应的构造函数,进行构造函数初始化。()

    8将首地址赋值给p变量就引用了该实体。(指向了该对象)

    this:代表对象。就是所在函数所属对象的引用。

    this到底代表什么呢?哪个对象调用了this所在的函数,this就代表哪个对象,就是哪个对象的引用。

    2,成员变量存在于堆内存中。

    静态变量存在于方法区中。

    3,成员变量随着对象创建而存在。随着对象被回收而消失。

    静态变量随着类的加载而存在。随着类的消失而消失。

    静态代码块、构造代码块、构造函数同时存在时的执行顺序:静态代码块 à 构造代码块 à 构造函数;

    4.eclipse自动生成类的帮助文档

  • 相关阅读:
    Zabbix 3.0编译安装
    用Python发布自己的代码
    欧拉公式为世界上最完美的公式
    通过别人远端安装anaconda来说配置文件
    jupyter安装与使用
    make在latex中的妙用
    latex源码到PDF文件
    anconda配置国内源
    git命令速查
    一张色环图教你搞定配色(转)
  • 原文地址:https://www.cnblogs.com/panxuejun/p/5909651.html
Copyright © 2011-2022 走看看