注意:(static)静态变量的使用也是有局限性的,一个静态方法中不能调用类中的非静态的方法和变量,static修饰的变量在类加载后在内存中只有一分内存空间,能够被一个类的全部实例对象所共享,如:总库100张票,4个窗口卖火车票,卖的都是总库里的票,不管是哪一个窗口卖掉的票,总票都会减一。html
public class BainLiang { public static void main(String[] args) { // TODO Auto-generated method stub //直接调用测试: System.out.println(QuBie.staticInt); // System.out.println(QuBie.shiInt);//报错 QuBie qb1 = new QuBie(); QuBie qb2 = new QuBie(); qb1.shiInt = 8; qb1.staticInt = 8;//这里改变之后,再建立的对象也是会用改过的数值 QuBie qb3 = new QuBie(); } } class QuBie { public static int staticInt = 0; public int shiInt = 0; public QuBie() { staticInt++; shiInt++; System.out.println("静态变量" + staticInt + " 实例变量" + shiInt); } }
静态变量 这种写法在生活中很是使用,如买火车票,一共100张,有4个窗口在卖,也就是说必定要公用一个资源,也就是要定义成static。设计模式
Java设计模式总汇测试