黑马程序员技术交流社区

标题: 关于集合的小问题。 [打印本页]

作者: 于海生    时间: 2012-1-1 12:12
标题: 关于集合的小问题。
本帖最后由 于海生 于 2012-1-2 08:32 编辑

第14天集合框架
public static void sop(Object obj)
        {
                System.out.println(obj);
        }
参数为什么是object类型的?
作者: 李爱霞    时间: 2012-1-1 12:18
是个对象类型
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 变量比访问显式声明类型的变量速度稍慢。
作者: 阮金明    时间: 2012-1-1 12:27
Object 数据类型可以指向任意数据类型的数据,包括您的应用程序识别的任意对象实例
老师为了方便,用它打印数据
作者: 刘建宇    时间: 2012-1-1 14:52
方便打印而已,用Object做参数,能接收任意类型的对象进来

作者: 颜宗茂    时间: 2012-1-1 16:25
因为所有的类都继承自Object类,这样的话就能实现多态,不管你传进来的是那个对象,都能被打印出来。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2