[英]Java: how it is possible to call method directly using class name
據我所知,只要我們想調用任何方法,就創建對象並使用obj.methodname
調用其方法。
但是下面的程序在不創建對象的情況下調用E
類的方法。 這怎么可能? 請任何人幫助我理解這個概念。
我的意思是 “從下面的代碼中,如何編寫E.test2();
? ,我認為應該是E obj=new E(); obj.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();
}
}
可以使用類名稱調用靜態方法,並且不需要該類的對象。
請閱讀以下內容: http : //introcs.cs.princeton.edu/java/21function/
test2方法在類E中是靜態的,而靜態方法是特定於類的,而不是特定於對象的,並且使用“ classname.methodname”語法進行訪問。 其中methodname是“類名”的靜態方法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.