小編典典
概念上的差別很簡單:
聲明 :您 聲明的 是某些東西,例如類,函數或變量。你不說任何事情 什麼 是類或函數的樣子,你剛才說,它的存在。
定義 :您 定義 某種事物的實作方式,例如類,函數或變量,即您說的 是 實際的東西。
在Java中 ,兩者之間幾乎沒有什麼差別,從形式上來說,聲明不僅包括辨別符,還包括其定義。這是我個人詳細解釋這些術語的方式:
類 :Java并沒有像C / C ++那樣将聲明和定義真正分開(在标頭和cpp檔案中)。您在聲明它們的位置定義它們。
函數 :編寫接口(或抽象類)時,可以說是在聲明函數而不定義它。但是,普通功能始終在聲明它們的位置定義。如果願意,請參見函數主體作為其定義。
變量 :變量 聲明 如下所示:
int x;
(您聲明一個變量x存在并且具有type int),無論它是局部變量還是成員字段。在Java中,除了 定義
可能保留的值(由配置設定給它的值)以外,沒有其他資訊x要 定義 。
這是我如何使用這些術語的粗略總結:
abstract class SomeClass { // class decl.
// \
int x; // variable decl. |
// |
public abstract void someMethod(); // function decl. |
// |
public int someOtherMethod() { // function decl. |
// | class
if (Math.random() > .5) // \ | def.
return x; // | function definition |
else // | |
return -x; // / |
// |
} // |
} // /
2020-09-11