我们知道Java是一种面向对象的语言.一切都是Java中的对象.我们也知道对象有一些东西(实例变量/字段)和做某事(方法).我们使用方法更改实例变量的状态是安全的,即; 二传手和吸气鬼.所以在构造函数中我们初始化实例变量.换句话说,构造函数正在为对象做一些事情.因此,假设构造函数是一种实用方法,就像设置值的setter一样,这是不正确的?区别在于setter甚至我们有返回类型void,在构造函数中我们没有任何返回类型.并且可以在对象上调用setter任意次数,但可以在对象的生命周期中调用构造函数一次.
aio*_*obe 13
我们可以说Contructors是Java中的方法吗?
如果你是新来的Java,并试图把握第一时间的概念,你可以认为构造函数的工厂方法.(比如在Python中,例如构造函数只是一个方法__init__.)然而,你应该继续前进并理解存在许多差异.仅举几例:
this引用的意义上它是非静态的.new,并且具有特殊的字节码invokespecial,而实例方法obj.method()通常通过编码调用字节码来调用invokevirtual.| 归档时间: |
|
| 查看次数: |
517 次 |
| 最近记录: |