1 public class Test {
 2     //属性:
 3     int id;
 4     static int sid;
 5 
 6     //这是一个main方法,是程序的入口
 7     public static void main(String[] args) {
 8         //创建一个Test类的具体对象
 9         Test t1 = new Test();
10         t1.id = 10;
11         t1.sid = 10;
12 
13         Test t2 = new Test();
14         t2.id = 20;
15         t2.sid = 20;
16 
17         Test t3 = new Test();
18         t3.id = 30;
19         t3.sid = 30;
20 
21         //读取属性的值
22         System.out.println(t1.id);
23         System.out.println(t2.id);
24         System.out.println(t3.id);
25 
26         System.out.println(t1.sid);
27         System.out.println(t2.sid);
28         System.out.println(t3.sid);
29     }
30 }

内存分析:

static关键字_类变量

 一般官方的推荐访问方式:可以通过类名.属性名的方式去访问:

  Test.sid = 100;

  System.out.println(sid);

 

static修饰属性总结:

(1)在类加载的时候一起加载入方法区中国的静态域中

(2)先于对象存在

(3)访问方式:对象名.属性名 类名.属性名 (推荐)

 

static修饰属性的应用场景:某些特定的数据想要在内存中共享,只有一块--》这个情况下,就可以用static修饰的属性

 

属性:

静态属性(类变量)

非静态属性(实例变量)

 

【3】static修饰方法;

静态方法中不能访问静态属性

在静态方法中的不能访问非静态方法