成员变量方法的区别?

网友投稿 538 2022-05-30

成员变量有两种:

实例变量

类变量(也称静态变量,静态域)

成员方法有三种:

实例方法

类方法(也称静态方法)

构造方法(无返回值,方法名和类名一致)

成员变量和方法的区别?

public class Person { public static final int defaultAge = 18;//常量,类编译时放到常量池 public static int age = 18;//类变量,在类加载的准备阶段,分配到方法区 private String like;//实例变量,在类被实例化时,分配到堆中 //静态模块 static { System.out.println("唱 跳 rap 篮球"); } //类方法,分配到方法区 static int getAge() { return age; } public Person() { //类的构造方法 } //实例方法,分配到方法区 public String getLike() { return like; } //实例方法 public void setLike(String like) { this.like = like; } }

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

类变量的特点:

它是该类所有实例共享的属性,在内存中只有一个地方存储这个变量(在方法区)。在类加载的准备阶段,分配到方法区,初始化阶段正式赋值。

所有实例都可以修改这个类变量的值。(前提是没有被final修饰) 。

访问类变量不用实例化对象,直接通过类可以使用。

生命周期取决于类的生命周期。

类方法的特点:

直接通过类就可以调用。

类方法可以直接调用类变量和类方法。

类方法不可以直接调用实例变量和实例方法。

类方法没有this,因为没有实例。

实例变量和实例方法的特点:

都必须通过实例对象才可以访问。(实例变量位于堆中,生命周期取决于实例的生命周期)

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:uCOS-Ⅲ学习笔记:时间片
下一篇:hdfs源码解析之客户端写数据(一)
相关文章