java - 如何从包含两个初始对象作为参数的扩展类创建对象的构造函数?

标签 java object extends

<分区>

我是 Java 新手,遇到一个简单的问题:

我有以下类(class)点:

public class Point {

    private int yAxis;
    private int xAxis;

    public Point (int x, int y)
    {
        xAxis = x;
        yAxis = y;
    }
}

我创建了一个扩展类 Point 的新类。我希望我的新类将两个对象 Point 作为参数。我编写了以下代码,但收到错误消息“隐式 super 构造函数 MyPoint() 未定义。必须显式调用另一个构造函数”。我该如何解决这个问题?

提前致谢!

public class Rectangle extends Point {

    private int length1;
    private int height1;

    public Rectangle(int x, int y, int l, int h) {
        super(x, y);
        l = length1;
        h = height1;
    }

    public Rectangle(Point topLeft, Point bottonRight) {


    }
}

最佳答案

其他人已经提到你不应该使用继承。我完全同意。但我发现 Effective Java 在此类问题上是一个很好的引用,我认为它值得自己回答。请看Effective Java Item 16: Favor composition over inheritance进行更深入的讨论。

关于java - 如何从包含两个初始对象作为参数的扩展类创建对象的构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8709564/

相关文章:

javascript - 根据条件延长 Ember 等级

java - 在另一个类中使用抽象类 inputverifier java

java - Linux/eclipse oxygen/项目错误

java - 测试所需的运行时参数、Spring Boot、配置路径

java - 是否有推荐的方法让 Spring 2.5+ Autowiring Hibernate 域对象

multithreading - 为什么 scala 在计算 Future 中的按名称参数时会挂起?

java - 为什么在初始化 Spring 时会出现 NullPointerException

javascript - 如何从 Javascript 中的过滤器返回特定值

django - 覆盖 Django 对象序列化程序以摆脱指定的模型

java - 如何正确返回从类扩展并实现接口(interface)的东西?