类属性: 又叫做静态属性 对象属性: 又叫实例属性,非静态属性 如果一个属性声明成类属性,那么所有的对象,都共享这么一个值
public class hero { static String copyright = "湖北生物科技职业学院所有"; //类属性 静态属性 public String name; //实例属性 非静态属性 public static void main(String args[]) { hero a = new hero(); a.name = "阿狸"; hero b = new hero(); b.name = "二狗"; System.out.println(b.copyright); System.out.println(b.name); System.out.println(a.name); } }两种方式
hero.copyright a.copyright如果一个属性,每个英雄都不一样,比如name,这样的属性就应该设计为对象属性,因为它是跟着对象走的,每个对象的name都是不同的
如果一个属性,所有的英雄都共享,都是一样的,那么就应该设计为类属性。比如血量上限,所有的英雄的血量上限都是 9999,不会因为英雄不同,而取不同的值。 这样的属性,就适合设计为类属性
通过a.copyright修改值, 然后通过打印b.copyright看看有没有什么变化?
public class hero { static String copyright = "湖北生物科技职业学院所有"; //类属性 静态属性 public String name; //实例属性 非静态属性 public static void main(String args[]) { hero a = new hero(); a.name = "阿狸"; a.copyright = "清华大学"; hero b = new hero(); System.out.println(hero.copyright); System.out.println(b.copyright); } }