当前页面: 开发资料首页 → J2SE 专题 → 类不实例化就能调用方法吗?
类不实例化就能调用方法吗?
摘要: 类不实例化就能调用方法吗?
初学Java不久,刚才在读Thinking in java时,发现一段代码很奇怪,P类可以不用实例化就直接调用方法,我感觉是需要先用new实例化一个对象再调用方法才对啊,哪位高手能指点一下?
*下面是书中的代码
//: com:bruceeckel:tools:P.java
// The P.rint & P.rintln shorthand.
package com.bruceeckel.tools;
public class P {
public static void rint(String s) {
System.out.print(s);
}
public static void rintln(String s) {
System.out.println(s);
}
} ///:~
你可以使用这个便捷工具来打印String,无论它是否需要换行(P.rintln( ))。
你可以猜到,这个文件的位置一定是在某个以一个CLASSPATH位置开始,然后接着是
com/bruceeckel/tools的目录下。编译完之后,你就可以用import语句在你系统
上的任何地方使用P.class文件了。
//: c05:ToolTest.java
// Uses the tools library.
import com.bruceeckel.tools.*;
import com.bruceeckel.simpletest.*;
public class ToolTest {
static Test monitor = new Test();
public static void main(String[] args) {
P.rintln("Available from now on!");
P.rintln("" + 100); // Force it to be a String
P.rintln("" + 100L);
P.rintln("" + 3.14159);
monitor.expect(new String[] {
"Available from now on!",
"100",
"100",
"3.14159"
});
}
} ///:~
这里的rintln()方法是static的
属于类本身,直接用类名调用就是了
该类对象也可以调用
看来楼主java才初学啊
不要用think in java当入门教程哦
呵呵
感谢 gefengxztg(戈峰) :>