-4
public class CircleGeometricObject extends GeometricObject  {

    private double radius;

    public CircleGeometricObject() {}
    public CircleGeometricObject(double radius) {
        this. radius = radius;
    }
    public CircleGeometricObject(double radius, String color, boolean filled) {
        this. radius = radius;
        setColor(color);
        setFilled( filled);
    }
}
4

3 に答える 3

3

コードの重複を減らしたい場合は、以下のようにすることができます (ただし、null チェックを追加します)。あなたの例ではおそらくやり過ぎですが、多くのコードを持つコンストラクターの場合、重複を減らすのに役立ちます。

public class MyClass {
    private Double radius;

    public MyClass() {
        this(null, null, null);
    }

    public class MyClass(Double radius) {
        this(radius, null, null)
    }

    public class MyClass(Double radius, String colour, boolean filled) {
        this.radius = radius;
        setColour(colour);
        setFilled(filled);
    }
}

** null を許可するために double を Double に変更するように編集されました

于 2013-04-19T20:36:16.997 に答える