JAVA中成员变量和静态变量区别
/**
* Title: Demo3.java
* Description:
* 成员变量和静态变量区别:
* 1.生命周期不同:
* 成员变量:随着对象(new)的创建而存在,随着对象的消失而消失,存在于堆内存对象中
* 静态变量:随着类的加载而加载,随着类的消失而消失,存在于(数据共享区)静态区
* 2.调用方式不同:
* 成员变量:只能通过创建的对象调用(实例变量)
* 静态变量:通过类名直接调用,对象也可以调用(类变量)
* 3.静态方法只能访问静态成员,不能访问非静态成员
* -->因为静态变量和静态成员随着类的创建而创建,而对象和非静态的变量也不存在,所以无法访问
* 非静态方法既可以访问静态的成员,也可以访问非静态的成员
*
* @author sunt
* @created 2016年5月3日 上午11:07:47
*/
public class Demo3 {
private String userName;
public static String PWD = "CHINESS";
/**
* 定义一个静态的方法,访问非静态变量测试
*/
public static void info(){
System.out.println("------用户名----" + userName);
}
}