【问题标题】:What is subclassing?什么是子类化?
【发布时间】:2011-07-01 15:53:06
【问题描述】:

我是 java 新手,我正在尝试创建一个 XML 文档并一遍又一遍地克隆该文档的特定节点(减去文本节点)。有人回答我说我应该子类化节点并覆盖克隆。所以我的问题是什么是子类化?

【问题讨论】:

    标签: java xml clone subclassing


    【解决方案1】:

    子类化意味着定义一个新类,该类具有旧类(“超类”)的属性并进行了一些更改。

    在这种情况下,您的原始响应者是这样说的:

    假设您有一个基类Base,它有一个方法getTwo,如下所示:

    class Base {
       public int getTwo(){ return 2;}
    }
    

    你决定你想要一个新的类,它仍然有一个方法getTwo,但它返回字符串“二”而不是数字2。你可以将它定义为

    class Subclass extends Base {
       public String getTwo() { return "two"; }
    }
    

    我们说SubclassBase 的子类——或者更常见的“是一种”——Base

    除此之外,您最好阅读一本关于使用 Java 进行面向对象编程的书。我喜欢Thinking in Java,它还有一个额外的好处是可以在线免费获得。

    【讨论】:

      【解决方案2】:

      @Charlie Martin 解释了子类化的含义。

      但是,尚不清楚您是否得到了好的建议。如果您通过在内存中组装 DOM 来创建 XML 文档,更好的方法是使用静态方法创建一个帮助类,这些方法执行您需要执行的 DOM 节点操作序列。

      【讨论】:

        【解决方案3】:

        简而言之:超类可以被子类化 - 这意味着对于特定类,我们可以找到/创建一个扩展它的子类。

        【讨论】:

          【解决方案4】:

          子类表示面向对象编程(继承)中的is a关系。

          例如
          圈子 is a Shap
          所以我们可以说:
          Circle 类Shape 类的子类。

          【讨论】:

            猜你喜欢
            • 2012-05-20
            • 1970-01-01
            • 1970-01-01
            • 2011-12-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多