據我所知,每當我們想調用的任何方法,然後我們創建對象並使用obj.methodname
調用它的方法來調用方法。Java的:它是如何可能直接使用類名
但下面程序調用E
類的,而無需創建對象的方法。這怎麼可能?請任何人幫助我理解這個概念。
我的意思是'從下面的代碼,這怎麼可能寫出來E.test2();
? ,我覺得應該是E obj=new E(); obj.test2();
class E
{
int i;
static int j;
void test1()
{
System.out.println("From test1");
}
static void test2()
{
System.out.println("From test2");
}
}
class F extends E
{
int m;
static int n;
void test3()
{
System.out.println("From test3");
}
static void test4()
{
System.out.println("From test4");
}
}
public class G {
public static void main(String args[])
{
E.test2();
F.test2();
}
}
「static」方法可以通過類名來調用,因爲它們屬於'Class'而不是'Class'的任何'instance',因此可以使用'類name'。我會reccomend你去下面的鏈接,閱讀completely.http://docs.oracle.com/javase/tutorial/java/javaOO/classvars.html – Deepak