什么是static?
他是静态的修饰符,修饰的变量叫静态变量,修饰的方法叫静态方法
作用:资源共享
非静态:只能通过对象调用,因为非静态的属性或方法只有在创建对象的时候才会被加载进内存
静态:既可以通过对象调用,也可以通过类名调用,建议使用类名调用(非静态的属性或方法属于对象的,静态的属性或方法属于类的)
如果这个方法不变或者只修改一次,就可以使用static修饰
/**
* 定票的个数
* 弄个窗口卖票的,下面输出两个窗口都在卖票
*/
public static int ticketCount =100;
public void sala(){
if(ticketCount>0){
System.out.println("售票一张,还剩"+--ticketCount+"张票");
}
}
public static void main(String[] args) {
Ticket t1 = new Ticket();
Ticket t2 = new Ticket();
//设置两个窗口都在卖票,但不会重复卖同一个票
for(int i=0;i<50;i++){
t1.sala();
t2.sala();
}
}
一个窗口卖一张不会重复
售票一张,还剩99张票
售票一张,还剩98张票
售票一张,还剩97张票
售票一张,还剩96张票
。。。。。。。
售票一张,还剩5张票
售票一张,还剩4张票
售票一张,还剩3张票
售票一张,还剩2张票
售票一张,还剩1张票
售票一张,还剩0张票