2017-09-15 1 views
3

Voici une classe Circle en python,Comment ajouter un nouveau constructeur alternatif en Java?

class Circle(object): 

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

qui obtient redessiné comme indiqué ci-dessous, en fonction des changements des besoins des clients,

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 classe offrent un contrat pour obtenir sous-classé .

Dans le cycle de vie de la conception de classe, Quelle est l'approche de Java dans l'ajout d'un nouveau constructeur alternatif, dans le scénario ci-dessus?

+1

Montrez-nous ce que vous avez créé en Java, d'abord. – AJNeufeld

Répondre

1

Vous pouvez soit ajouter un constructeur alternatif avec la nouvelle signature, soit, de manière similaire à celle de votre méthode de classe from_bbd, utiliser une méthode usine pour créer un cercle à partir d'une boîte englobante.