java static 关键字

1   使用static 关键字 声明属性  是全局属性

2 使用static 声明方法  直接通过类名调用

3 使用static 方法的时候,只可以访问static声明的属性 和 方法 而非static 声明的属性和方法 是不可访问的

如果访问会报错:

java static 关键字

由于 country 已私有化 故  static 型 无法访问

 package ****.zyl.demo;
class People01{
  //为了 避免 多写代码 我们将country 写成static 变量(全局)  改一个 而动全身
 
 //private static String  country="北京";
  //静态 不可以访问 非静态的
  static String  country="北京";
  String name = "张三";
 
 public People01(String name)
 {
  this.name=name;
 }
 public void tell()
 {
  System.out.println("姓名:"+name+"住在:"+country);
 }
}
public class StaticDemo {
 public static void main(String[] args)
 {
  People01 people= new People01("张三");
  //people.country = "上海";
  // 由于 country 是static 变量 使用类名直接调用
  People01.country="上海";
  people.tell();
  People01 people2 = new People01("李四");
 // people2.country = "上海";
  people2.tell();
  People01 people3 = new People01("王五");
  //people3.country="上海";
  people3.tell();
  
 }
}

结果:

姓名:张三住在:上海
姓名:李四住在:上海
姓名:王五住在:上海