2017-09-15 7 views
3
以下

は、以下に示すように、顧客の要件の変化に基づいて、再設計されますJavaで新しい代替コンストラクタを追加するには?

class Circle(object): 

    def __init__(self, radius): 
     self.radius = radius 

class Circle(object): 

    def __init__(self, radius): 
     self.radius = radius 

    @classmethod    # Alternative constructor 
    def from_bbd(cls, bbd):  # Bounding box diagnol 
     radius = bbd/2.0/math.sqrt(2.0) 
     return cls(radius) 

Circleクラスは、サブ分類を取得する契約を提供し、PythonでCircleクラスです。

上記のシナリオでは、クラス設計ライフサイクルで、新しい代替コンストラクタを追加する際のJavaのアプローチは何ですか?

+1

まず、Javaで作成したものを表示します。 – AJNeufeld

答えて

1

新しいシグネチャで代替コンストラクタを追加するか、またはfrom_bbdクラスメソッドと同様の方法で、ファクトリメソッドを使用して境界ボックスから円を作成します。

関連する問題