对象创建、static关键字、静态变量和成员变量的区别、文档

1.对象创建

  Student s = new Student();
  步骤:
    (1)加载Student。class文件进内存;
    (2)在栈内存中为s开辟空间;
    (3)在堆内存为学生对象开辟空间;
    (4)对学生对象的成员变量进行默认初始化;
    (5)对学生对象的成员变量进行显示初始化;
    (6)通过构造方法对学生对象的成员变量赋值;
    (7)学生对象初始化完毕,把对象地址赋值给s变量。

2.static关键字

  • 特点:a.随着类的加载而加载;
       b.优先于对象存在;
       c.被类的所有对象共享;
       d.可以通过类名调用。
  • 注意事项:
       a.在静态方法中没有this关键字;
       b.静态方法只能访问静态的成员变量和成员方法。

    3.静态变量和成员变量的区别

  • 所属不同
      静态变量属于类,所以也称为类变量
      成员变量属于对象,所以也称实例变量
  • 内存中位置不同
      静态变量存储于方法区的静态区
      成员变量存储于堆内存
  • 内存出现的时间不同
      静态变量随着类的加载而加载,随着类的消失而消失
      成员变量随着对象的创建而存在,随着对象的消失而消失
  • 调用不同
      静态变量可以通过类名调用,也可以通过对象调用
      成员变量只能通过对象名调用

    4.文档

  • 如何使用JDK提供的帮助文档
      (1)找到文档,打开文档;
      (2)点击显示,找到索引,出现输入框;
      (3)举例:找Scanner;
      (4)看这个类的结构(需不需要导包),java.lang包下的内容需要我们手动导入;
      (5)看这个类的说明;
      (6)看开始版本;
      (7)看构造方法;
      (8)看成员方法,左边,是否为static,如果是就不需要创建方法,直接调用该方法,看返回值就使用什么接收
          右边,看参数列表:个数,类型,需要什么参数就传什么;
      (9)然后使用。

猜你喜欢

转载自blog.51cto.com/13987153/2299659