首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

超级新手问一个超级初学者的有关问题,莫见怪

2012-09-21 
超级新手问一个超级菜鸟的问题,莫见怪~class StaticTest {static int i 47}class Incrementable {stati

超级新手问一个超级菜鸟的问题,莫见怪~
class StaticTest {
static int i = 47;
}
class Incrementable {
static void increment() { StaticTest.i++; }
}
public class cc {
public static void main(String[] args) {
System.out.println("StaticTest.i= " + StaticTest.i);
StaticTest st1 = new StaticTest();
StaticTest st2 = new StaticTest();
System.out.println("st1.i= " + st1.i);
System.out.println("st2.i= " + st2.i);
Incrementable sf = new Incrementable();
sf.increment();
System.out.println("After sf.increment() called: ");
System.out.println("st1.i = " + st1.i);
System.out.println("st2.i = " + st2.i);
Incrementable.increment(); //这个是什么情况?和上面的sf.increment()有什么区别?
System.out.println("After Incrementable.increment() called: ");
System.out.println("st1.i = " + st1.i);
System.out.println("st2.i = " + st2.i);
}
}

还有什么时候用static?static就不用写在class cc里了吗?
求教

[解决办法]
class StaticTest {
static int i = 47;
}
class Incrementable {
static void increment() { StaticTest.i++; }
}
 
这个里面有一个静态方法,使用静态方法,直接是类名.方法
不需要new 一个Incrementable 


[解决办法]
个人觉得没有什么区别,不过静态方法最好直接是类名.方法!
[解决办法]
因为increment是个静态方法,可以直接调用!

热点排行