object 是什么类型

object 是什么类型

Object类是所有Java类的祖先。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法。

在不明确给出超类的情况下,Java会自动把Object作为要定义类的超类,可以使用类型为Object的变量指向任意类型的对象。

Object类有一个默认构造方法pubilc Object(),在构造子类实例时,都会先调用这个默认构造方法。Object类的变量只能用作各种值的通用持有者。要对他们进行任何专门的操作,都需要知道它们的原始类型并进行类型转换。例如:

Object obj = new MyObject();

MyObject x = (MyObject)obj;

扩展资料:

常用各种类型方法扩展:

Object(),默认构造方法。

clone(),创建并返回此对象的一个副本。

equals(Object obj),指示某个其他对象是否与此对象“相等”。

finalize(),当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。

getClass(),返回一个对象的运行时类。

hashCode(),返回该对象的哈希码值。

notify(),唤醒在此对象监视器上等待的单个线程。

notifyAll(),唤醒在此对象监视器上等待的所有线程。

toString(),返回该对象的字符串表示。

wait(),导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。

wait(long timeout),当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过指定的时间量。

wait(long timeout, int nanos),导致当前的线程等待,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者其他某个线程中断当前线程,或者已超过某个实际时间量。

参考资料来源:百度百科-java.lang.object

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-04
是个对象类型
Object 数据类型

保存引用对象的 32 位(4 字节)地址。可以为 Object 的变量分配任何引用类型(字符串、数组、类或接口)。Object 变量还可以引用任何值类型(数值、Boolean、Char、Date、结构或枚举)的数据。

备注
Object 数据类型可以指向任意数据类型的数据,包括您的应用程序识别的任意对象实例。当您在编译时不知道变量可能指向哪种数据类型时,请使用 Object。

Object 的默认值为 Nothing(空引用)。

数据类型
可以将任何数据类型的变量、常数或表达式赋给 Object 变量。若要确定 Object 变量当前引用的数据类型,您可以使用 System.Type 类的 GetTypeCode 方法。下面的示例阐释这一点。

复制代码
Dim myObject As Object
' Suppose myObject has now had something assigned to it.
Dim datTyp As Integer
datTyp = Type.GetTypeCode(myObject.GetType())

Object 数据类型为引用类型。但是,当 Object 变量引用值类型的数据时,Visual Basic 将此变量视为一个值类型。

存储
无论它引用什么数据类型,Object 变量都不包含数据值本身,而是指向该值的一个指针。它总是在计算机内存中使用四个字节,但这不包括表示变量值的数据的存储。由于使用指针定位数据的代码的缘故,访问持有值类型的 Object 变量比访问显式声明类型的变量速度稍慢。

编程提示
互操作注意事项。 如果您正连接到不是为 .NET Framework 编写的组件,例如 Automation 或 COM 对象,请记住其他环境中的指针类型与 Visual Basic Object 类型不兼容。

性能。 用 Object 类型声明的变量足够灵活,可以包含对任何对象的引用。但是,在这样一个变量上调用方法或属性时,总是会遇到后期绑定(在运行时)。若要强制前期绑定(在编译时)和提高性能,请用特定的类名称声明变量,或将它强制转换为特定数据类型。

当您声明一个对象变量时,请尝试使用特定的类类型,例如 OperatingSystem,而不是普通的 Object 类型。还应使用可用的最具体的类,例如 TextBox 而不是 Control,这样就可以访问其属性和方法。通常可以使用“对象浏览器”中的“类”列表来查找可用的类名。

扩大。 所有数据类型和所有引用类型均扩大至 Object 数据类型。这意味着您可以将任意类型转换为 Object,而不会遇到 System.OverflowException 错误。

但是,如果您在值类型和 Object 之间转换,Visual Basic 会执行称为装箱和取消装箱的操作,这将减慢执行速度。

类型字符。 Object 不包含文本类型字符或标识符类型字符。

Framework 类型。 .NET Framework 中的对应类型是 System.Object 类。

示例
下面的示例演示一个 Object 变量,它指向一个对象实例。

复制代码
Dim objDb As Object
Dim myCollection As New Collection()
' Suppose myCollection has now been populated.
objDb = myCollection.Item(1)本回答被提问者采纳
第2个回答  2020-12-02

相似回答