静态成员和非静态成员的区别
静态变量使用 static 修饰符进行声明,在类被实例化时创建,通过类进行访问。不带
有 static 修饰符声明的变量称做非静态变量,在对象被实例化时创建,通过对象进行访问。一
个类的所有实例的同一静态变量都是同一个值,同一个类的不同实例的同一非静态变量可以是不同的值。静态函数的实现里不能使用非静态成员,如非静态变量、非静态函数等。
示例二:
package com.itheima;
class D{
static int sum=10;
int i;
public D(int i) {
super();
this.i = i;
}
}
public class test {
public static void main(String[] args) {
// TODO 自动生成的方法存根
D a1=new D(2);
D a2=new D(4);
a1.sum--;
System.out.println("a1 i="+a1.i);
System.out.println("a2 i="+a2.i);
System.out.println("sum="+a2.sum);
}
}
结果如下:
a1 i=2
a2 i=4
sum=9 |
|