【发布时间】:2011-07-01 15:53:06
【问题描述】:
我是 java 新手,我正在尝试创建一个 XML 文档并一遍又一遍地克隆该文档的特定节点(减去文本节点)。有人回答我说我应该子类化节点并覆盖克隆。所以我的问题是什么是子类化?
【问题讨论】:
标签: java xml clone subclassing
我是 java 新手,我正在尝试创建一个 XML 文档并一遍又一遍地克隆该文档的特定节点(减去文本节点)。有人回答我说我应该子类化节点并覆盖克隆。所以我的问题是什么是子类化?
【问题讨论】:
标签: java xml clone subclassing
子类化意味着定义一个新类,该类具有旧类(“超类”)的属性并进行了一些更改。
在这种情况下,您的原始响应者是这样说的:
假设您有一个基类Base,它有一个方法getTwo,如下所示:
class Base {
public int getTwo(){ return 2;}
}
你决定你想要一个新的类,它仍然有一个方法getTwo,但它返回字符串“二”而不是数字2。你可以将它定义为
class Subclass extends Base {
public String getTwo() { return "two"; }
}
我们说Subclass 是Base 的子类——或者更常见的“是一种”——Base。
除此之外,您最好阅读一本关于使用 Java 进行面向对象编程的书。我喜欢Thinking in Java,它还有一个额外的好处是可以在线免费获得。
【讨论】:
@Charlie Martin 解释了子类化的含义。
但是,尚不清楚您是否得到了好的建议。如果您通过在内存中组装 DOM 来创建 XML 文档,更好的方法是使用静态方法创建一个帮助类,这些方法执行您需要执行的 DOM 节点操作序列。
【讨论】:
简而言之:超类可以被子类化 - 这意味着对于特定类,我们可以找到/创建一个扩展它的子类。
【讨论】:
子类表示面向对象编程(继承)中的is a关系。
例如
圈子 is a Shap。
所以我们可以说:
Circle 类是 Shape 类的子类。
【讨论】: