【发布时间】:2015-03-10 05:20:16
【问题描述】:
我刚刚看到这个关于 Java 的精彩教程视频,我发现 Object 类是所有幕后类的超类。这样就很容易解决arraylist中存在多种数据类型的问题,只需在处理列表本身时声明Object类即可。
我的问题是:
为什么不为所有对象声明Object object = new SubObjectClass();?
这是因为我还没有遇到过某种性能低效或内存问题吗?我发现了另一个问题,但我没有看到有人解释为什么不只是有 Object 类声明?
我明白它为什么在那里。如果这是一个基本问题,我深表歉意。
【问题讨论】:
-
试一试,看看做完后访问类的属性是多么容易......
-
JavaScript 或多或少按照你描述的方式做事;您对所有变量使用
var,并且您没有指定类型名称。这有优点,但也有缺点:(1)它可以很容易地将变量分配给错误类型的对象,而在 Java 中,强类型可以让您在编译时捕获许多错误; (2) 每当你调用一个方法时,程序必须进行搜索以找出该对象是否有一个具有该名称的方法,而我认为在 Java 中它只是从数组中加载一个虚拟地址,这要快一些。