2017-10-02 9 views
-11

複数のコンストラクタを使用して新しいオブジェクトを作成すると、Javaでは基本的にはそれが行われますか?たとえば、複数のintを持つコンストラクタがあった場合はどうなりますか?または、コンストラクタ引数をスキップしたい場合はどうしますか?それは実行するだろうか?Javaの複数のコンストラクタ

+2

*「基本的にはどうなるのですか」*どのような順序で行っていますか? *簡単にこれを試してみて、すべての質問に対する回答を得ることができます。 – luk2302

+0

'this()についてのご質問はありますか?順序は、提供される引数によって異なります。 – Enzokie

+0

['java multiple constructors'](https://www.google.com/search?q=java+multiple+constructors)のウェブ検索を試しましたか?それはあなたの質問に答えたでしょう。 – Andreas

答えて

5

各コンストラクタは他のコンストラクタとは独立しています。オブジェクトを構築するコンストラクタは、new演算子の後に呼び出すものです。

+2

"最初の行で' this(...) 'を呼び出さない限り、他のものとは独立しています。 –

0
which constructor to call depends upon arguments you pass, for example lets consider following class: 

    public class Animal 
    { 
    String name; 
    String type; 
    Boolean carnivorous; 

    Animal(String name) 
    { 
    this.name = name; 
    } 

    Animal(String name, String Type) 
    { 
    this.type = type; 
    this.name = name; 
    } 
    } 

    so if you pass name and type Animal(String name, String Type) will be called , or if you pass only name then Animal(String name) will be called. 
Also make note that if you define your own constructor then you override no-argument default constructor, so if you need that too along with your custom constructors then define it simply as 
    Animal(); 
関連する問題