package obj2;标签:静态方法,变量,Chinese,静态,关键字,static,yes From: https://www.cnblogs.com/liujy2233/p/16795989.html
/**
* @author liu$
* @version 1.0
*
* 1.static关键词的使用(静态的)
* 2.用来修饰:属性、方法、代码块、内部类
*
* 3.用来修饰属性:静态变量(类变量)
* 3.1属性:静态变量和实例变量
* 实例变量:创建类的多个对象,每个对象拥有一套独立的非静态属性,修改其中一个,不会影响其它对象的属性
* 静态变量:一个对象修改时,其他对象调用是修改过了的
* 3.2 说明:
* ①静态变量随着类的加载而加载
* ②静态变量的加载要早于对象的创建
* ③由于类只会加载一次,则静态变量在内存中也只会存在一份:存在方法区的静态域中
* ④ 类变量 实例变量
* 类 yes no
* 对象 yes yes
* 3.3举例 System.out ; Math.PI ;
* 4.使用static修饰的方法:静态方法
* ①随着类的加载而加载,可以用"类.静态方法"调用
* ② 静态方法 非静态方法
* 类 yes no
* 对象 yes yes
* ③ 静态方法中,只能调用静态方法或属性
* 非静态方法中,都可以调用
*
* @date $ $
*/
public class StatciTest {
public static void main(String[] args) {
Chinese.nation = "中国" ; //可以直接赋值
Chinese.eat(); //可以直接调,对象也可以调
Chinese c1 = new Chinese() ;
c1.name = "姚明" ;
c1.age = 40 ;
c1.nation="CHN" ;
c1.eat() ;
Chinese c2 = new Chinese() ;
c2.name = "马龙" ;
c2.age = 30 ;
System.out.println(c2.nation);
}
}
class Chinese{
String name ;
int age ;
static String nation ;
public static void eat(){
System.out.println("吃饭");
}
}