Java中的声明和定义有什么区别?

我对这两个词感到非常困惑。我检查了stackoverflow,对于C ++有一个类似的问题,但对于Java没有。

有人可以解释一下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; // / |

// |

} // |

} // /

以上是 Java中的声明和定义有什么区别? 的全部内容, 来源链接: utcz.com/qa/416111.html

回到顶部