Java中的实例究竟是什么?

pri*_*iya 46 java oop reference object instance

对象,实例和引用有什么区别?他们说他们必须为他们的应用程序创建一个实例?那是什么意思?

Mar*_*ers 70

对象和实例是一回事.

我个人更喜欢在引用特定类型的特定对象时使用"实例"一词,例如"Foo类型的实例".但是在谈论一般的对象时,我会说"对象"而不是"实例".

引用要么指特定对象,要么它可以是空引用.


他们说他们必须为他们的应用程序创建一个实例.这是什么意思?

他们可能意味着你必须写这样的东西:

Foo foo = new Foo();
Run Code Online (Sandbox Code Playgroud)

如果您不确定应该实例化哪种类型,则应联系应用程序的开发人员并要求提供更完整的示例.


Boz*_*zho 11

"应用程序的实例"意味着什么.

"对象"和"实例"是一回事.有一个"类"定义结构,以及该类的实例(获得new ClassName()).例如,有类Car,并且存在具有不同属性的实例,例如里程,最大速度,马力,品牌等.

在Java上下文中,引用是变量* - 它指向对象/实例.例如,String s = null;- s是一个引用,当前不引用任何实例,但可以引用String该类的实例.

*Jon Skeet记录了变量和引用之间的区别.看他的评论.当你调用一个方法 - 值传递时,Java是如何工作的一个重要区别.

s的值是参考.区分变量和值,对象和引用非常重要.


小智 8

我认为Object = Instance.引用是对象的"链接".

Car c = new Car();
Run Code Online (Sandbox Code Playgroud)

变量c存储对Car类型对象的引用.


Alp*_*ine 7

例如,当您使用关键字时new,JFrame j = new JFrame();您正在创建该类的实例JFrame.

new运营商通过为新对象分配内存,并返回到内存的引用实例化一个类.
注意:短语"实例化一个类"与"创建一个对象"意思相同.创建对象时,您正在创建类的"实例",因此"实例化"一个类.

看看这里
创建对象


Java编程语言的类型分为两类:primitive typesreference类型.
reference类型是class类型,interface类型和 array类型.
还有一种特殊 null类型.
对象是动态创建的class类型实例或 动态创建的实例 array. 类型
的值reference是对象的引用.

有关详细信息,请参阅类型,值和变量

  • 请注意,`j`甚至也不是引用.这是一个变量.`j`的*值*是参考.区分变量和值,对象和引用非常重要. (7认同)

Kum*_*mar 5

主要的区别是当你说 ClassName obj = null; 您只是为该类创建一个对象。它不是该类的实例。

该语句只会为静态 meber 变量分配内存,而不是为普通成员变量分配内存。

但是当你说 ClassName obj = new ClassName(); 您正在创建类的实例。此语句将为所有成员变量分配内存。


小智 5

Computer c= new Computer()
Run Code Online (Sandbox Code Playgroud)

这里从Computer类创建一个对象.名为c的引用允许程序员访问该对象.