: - あなたは、パラメータを持つものを意味している場合、すべてで、それことを考えることになるには理由がJavaのコンストラクタのベストプラクティス下記のいずれかにsimillarコンストラクタを持つことの利点は何
class A{
public A(A a){}
public A(){}
}
: - あなたは、パラメータを持つものを意味している場合、すべてで、それことを考えることになるには理由がJavaのコンストラクタのベストプラクティス下記のいずれかにsimillarコンストラクタを持つことの利点は何
class A{
public A(A a){}
public A(){}
}
A(A a){/*do something*/}
は、コピーコンストラクタとして役立つことができます。
ありませんが、パラメータを完全に無視し、すでに同じ効果を持つ別のコンストラクタがあります。
あなたはより現実的な例を与えることができれば、我々はより多くの有用な情報を与えることができるかもしれ...
あなたは質問が非常に不明ですが、基本的にあなたがクラスを持っていれば、それはコンストラクタを持ち、同じクラスのインスタンスをとり、コピーコンストラクタを持っています。元のインスタンスと同じ内部値を持つ新しいインスタンスを作成するコンストラクタです。
編集 - もちろん、あなたのコンストラクタは新しいインスタンスを作成する以外の何かを行うと仮定します。
コピーコンストラクタを必要としない限り、利点はありません。このオブジェクトがコピーコンストラクタセマンティックを使用するのではなく、クローン可能でなければならない場合は、clone()メソッドを使用することをお勧めします。
他にも述べたように、コピーコンストラクタがあります。コピーコンストラクタが必要な理由は、number of reasonsです。それらの一部は次のとおりです。
コピーコンストラクタの詳細と使用する理由(必要な場合)をこの記事に追加しました。
また、デフォルトのコンストラクタを提供はまだ特に依存性注入または直列化が考慮されているシナリオでは、良い習慣と見なされる可能性があるなど、このようなdecoratorやproxyとして委任ベースの設計パターンの数に有用である可能性
。