这些问题纯粹是出于好奇。我实际上不需要继承数组的子类,我只是想进一步了解它们在Java中的工作方式。
数组的Javadoc API在哪里?我为“ Arrays”类找到了一个,但是该类仅包含要在Java数组上使用的实用程序,而不是实际的数组类。这使我想到下一个问题:
是否有一个实际的数组类,其中所有数组都是子类?
是(例如)Object[]
的超类String[]
吗?我猜这里的答案是否定的。这些实际的课程与其他任何课程一样吗?
是String[]
和其他人不同String[][]
吗?或String[][][]
等等?
如标题中所述,是否可以继承数组类(或继承THE数组类?仍然不确定如何工作,正如我上面的询问所表明的那样)?我是否可以创建自己的类,除了具有更多功能外,其实例的行为与数组完全相同?
谢谢。
Java语言规范回答了所有这些问题:
数组类型的直接超类是Object。每种数组类型都实现Cloneable和java.io.Serializable接口。
因此,没有,所有数组都没有通用的基类,因此也没有JavaDoc。数组的成员由规范定义。
数组类型之间的子类型在4.10.3节中定义-
是的,String[]
是的子类型Object[]
。另请参见ArrayStoreException。
是的String[].class != String[][].class
。(请参阅第10.8节)
不,没有子类数组的语法。特别是,extends子句必须包含一个类类型(并且数组类型不是类类型)。
在这个问题上展开一点VBA继承模式 我正在VBA中复制一个基本的继承模式,但我想了解是否有更有效和简洁的方法来实现这一点。 考虑一下这个小测试用例。 伊尼马尔。cls公司 nimal.cls:超类 Cat.cls:动物的子类 Test.bas 通过这样做,我可以: 对Cat和Dog对象调用eat()方法,并具有特定的重写行为 这似乎可行,但很麻烦:假设您需要实现许多动物子类(狗、鸟、犰狳、鸭嘴兽、
问题内容: 这是一个面试问题。 子类是否继承私有字段? 我回答“否”,因为我们无法使用“常规OOP方式”访问它们。但是访问者认为它们是继承的,因为我们可以间接或使用反射来访问这些字段,并且它们仍然存在于对象中。 回来后,我在javadoc中找到了以下引号: 超类私人成员 子类不继承其父类的私有成员。 你知道面试官的观点有什么论据吗? 问题答案: 这里的问题/答案中的大多数困惑都围绕着继承的定义。
问题内容: 今天,我在采访中面临一个问题。是否可以在Singleton类上应用继承概念?我说过,由于构造函数是私有的,因此我们无法扩展该Singleton类。 他问我的下一件事是将继承应用于该Singleton类。因此,我将Singleton的构造函数作为受保护对象,认为孩子的构造函数也已受到保护。但是我错了,孩子可以有一个等于或大于该值的修饰符。 因此,我请他在这种情况下举一个真实的例子。他没能
我试图写一个类(SalaryEmployee)和子类(ComissionEmployee),但我没有得到正确的工资,我不能做SE1.SetSalesMount(20000)。我哪里出了问题? 这是主要的:
问题内容: 在Java中是否可以覆盖Objects数组的toString? 例如,假设我创建了一个简单的类(由于这是一个普遍的问题,所以实际上是哪个类并不重要)。客户端一旦创建了一个数组并使用了它,是否有可能不打印该数组的地址,而是打印一个定制的? PS:当然,我不能只在类中重写它,因为它与单个实例有关。 问题答案: 不会。您当然可以创建一个静态方法User.toString(User []),但
例如:案例1:我们创建的每个Java类是否都将扩展类,如果是这样,那么为什么我们能够扩展一个类到我们的类可能是愚蠢的问题,刚刚记住了,我发布这个问题