黑马程序员技术交流社区

标题: 售票static的问题 [打印本页]

作者: 余善航    时间: 2013-1-9 21:34
标题: 售票static的问题
//售票的小程序。
//并且是两个窗口同时售票。
class Ticket extends Thread
{
private static int ti=100;//为什么这儿加上static修饰符就不是“二百张票了”?????
Ticket()
{
  super();
}
Ticket(String name)
{
  super(name);
}
public void run()
{
while(true)
{
  if(ti>0)
   System.out.println(this.getName()+"run-----"+ti--);
}
}
}
public class Td
{

public static void main(String[] args)
{
  Ticket t=new Ticket("one++++");
  Ticket t1=new Ticket("two++++");
  t.start();
  t1.start();
}
}


作者: 罗利华    时间: 2013-1-9 22:20
private static int ti=100;
这句的意思是说:
定义了一个私有变量,而且是静态的,
它会存在于数据区内,是类的公用变量。
也就是说,此类的所有对象都可以改变它的值。
作者: 夏振博    时间: 2013-1-9 22:21
本帖最后由 arno942 于 2013-1-9 22:31 编辑

网速问题 ,重复回帖 ,这个作废

作者: 夏振博    时间: 2013-1-9 22:22
本帖最后由 arno942 于 2013-1-9 22:34 编辑

被static修饰的属性为静态属性,方法为静态方法,是随着类的加载而加载,只能加载一次,类死掉它就死,
理解的一挺就理解了,我在给你多说点
static属性,有没有对象,都是一份。
实例属性,没有对象,就没有实例属性,有1个对象就有一份实例属性,有100个对象,就有100份实例属性。
static方法:不能访问实例属性和实例方法,但可以访问静态属性和静态方法
实例方法:可以访问静态属性和静态方法。
  1. public class DemoTest1 {
  2.         public static void main(String[] args) {
  3.                 new Test();
  4.                 new Test();
  5.         }
  6. }
  7. class Test {
  8.         {
  9.                 System.out.println("无名块1");
  10.         }
  11.         P p1 = new P("p1");
  12.         {
  13.                 System.out.println("无名块2");
  14.         }
  15.         P p2 = new P("p2");
  16.         {
  17.                 System.out.println("无名块3");
  18.         }
  19.         static P p3 = new P("静态属性p1");
  20.         static {
  21.                 System.out.println("静态块1");
  22.         }
  23.         static P p4 = new P("静态属性p2");
  24.         static {
  25.                 System.out.println("静态块2");
  26.         }
  27.         public Test() {
  28.                 System.out.println("构造器");
  29.         }
  30. }
  31. class P {
  32.         public P(String s) {
  33.                 System.out.println(s);
  34.         }
  35. }
  36. // 结果可以看出静态的只能加载一次
  37. /*
  38. p3,块4,p4,块5,块1,p1,块2,p2,块3,构造器,块1,p1,块2,p2,块3,构造器
  39. */
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2