public class Animal {
private String species;
private int age;
// デフォルトコンストラクタ
public Animal() {
this("Unknown", 1); // 別ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã™
}
// 引数ã¤ãコンストラクタ1
public Animal(String species) {
this(species, 1); // 別ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã™
}
// 引数ã¤ãコンストラクタ2
public Animal(String species, int age) {
this.species = species;
this.age = age;
}
// ゲッターメソッド(çœç•¥ï¼‰
// mainメソッド
public static void main(String[] args) {
// デフォルトコンストラクタãŒå‘¼ã³å‡ºã•れる
Animal animal1 = new Animal();
System.out.println("Animal1: Species = " + animal1.getSpecies() + ", Age = " + animal1.getAge());
// 引数ã¤ãコンストラクタãŒå‘¼ã³å‡ºã•れる
Animal animal2 = new Animal("Lion");
System.out.println("Animal2: Species = " + animal2.getSpecies() + ", Age = " + animal2.getAge());
// 別ã®å¼•æ•°ã¤ãコンストラクタãŒå‘¼ã³å‡ºã•れる
Animal animal3 = new Animal("Elephant", 10);
System.out.println("Animal3: Species = " + animal3.getSpecies() + ", Age = " + animal3.getAge());
}
}
ã“ã®ä¾‹ã§ã¯ã€Animal クラス内㫠main メソッドãŒè¿½åŠ ã•れã€ãã®ä¸ã§ Animal クラスã®ã‚ªãƒ–ジェクトを生æˆã—ã¦ã„ã¾ã™ã€‚å„オブジェクトã®çŠ¶æ…‹ãŒæ£ã—ã表示ã•れるã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
コンストラクタãƒã‚§ãƒ¼ãƒ³
「コンストラクタãƒã‚§ãƒ¼ãƒ³ã€ã¯ã€åŒã˜ã‚¯ãƒ©ã‚¹å†…ã§ç•°ãªã‚‹ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒãŠäº’ã„を呼ã³å‡ºã™ä»•組ã¿ã‚’指ã—ã¾ã™ã€‚ã“れã«ã‚ˆã‚Šã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®å…±é€šã—ãŸåˆæœŸåŒ–処ç†ã‚’効率的ã«å†åˆ©ç”¨ã§ãã¾ã™ã€‚以下ã¯ã€ã€Œã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãƒã‚§ãƒ¼ãƒ³ã€ã®è¦ç‚¹ã‚’解説ã—ã¾ã™ã€‚
- åŒã˜ã‚¯ãƒ©ã‚¹å†…ã§ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿å‘¼ã³å‡ºã—: コンストラクタãƒã‚§ãƒ¼ãƒ³ã§ã¯ã€åŒã˜ã‚¯ãƒ©ã‚¹å†…ã§å®šç¾©ã•れãŸç•°ãªã‚‹ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒãŠäº’ã„を呼ã³å‡ºã—ã¾ã™ã€‚ã“れã«ã‚ˆã‚Šã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã®åˆæœŸåŒ–処ç†ãŒåŠ¹æžœçš„ã«å†åˆ©ç”¨ã•れã¾ã™ã€‚
- thisã‚ーワードã®åˆ©ç”¨: コンストラクタãƒã‚§ãƒ¼ãƒ³ã‚’実ç¾ã™ã‚‹ãŸã‚ã«ã¯ã€
thisã‚ーワードを使用ã—ã¦åŒã˜ã‚¯ãƒ©ã‚¹å†…ã®åˆ¥ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã—ã¾ã™ã€‚thisã‚ーワードを使ã£ã¦åˆ¥ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã™ã“ã¨ã§ã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãƒã‚§ãƒ¼ãƒ³ãŒå½¢æˆã•れã¾ã™ã€‚ - オーãƒãƒ¼ãƒãƒ¼ãƒ‰ã•れãŸã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿: コンストラクタãƒã‚§ãƒ¼ãƒ³ã‚’構築ã™ã‚‹ã«ã¯ã€åŒã˜ã‚¯ãƒ©ã‚¹å†…ã§ã‚ªãƒ¼ãƒãƒ¼ãƒãƒ¼ãƒ‰ã•れãŸè¤‡æ•°ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒå¿…è¦ã§ã™ã€‚ã“れらã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã¯ç•°ãªã‚‹å¼•数リストをæŒã¤ã“ã¨ãŒã§ãã¾ã™ã€‚
以下ã¯ã€Person クラスã®ä¾‹ã‚’通ã˜ã¦ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãƒã‚§ãƒ¼ãƒ³ã‚’示ã™ã‚³ãƒ¼ãƒ‰ã§ã™ã€‚
public class Person {
private String name;
private int age;
// デフォルトコンストラクタ
public Person() {
this("Unknown", 18); // 別ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã™
}
// 引数をå—ã‘å–るコンストラクタ1
public Person(String name) {
this(name, 18); // 別ã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã™
}
// 引数をå—ã‘å–るコンストラクタ2
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// ゲッターメソッド(çœç•¥ï¼‰
}
ã“ã®ä¾‹ã§ã¯ã€ãƒ‡ãƒ•ォルトコンストラクタãŒå¼•æ•°ã¤ãã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã—ã€å¼•æ•°ã¤ãã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãŒåˆ¥ã®å¼•æ•°ã¤ãã®ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ã‚’呼ã³å‡ºã—ã¦ã„ã¾ã™ã€‚ã“れã«ã‚ˆã‚Šã€ã‚³ãƒ³ã‚¹ãƒˆãƒ©ã‚¯ã‚¿ãƒã‚§ãƒ¼ãƒ³ãŒå½¢æˆã•れã€ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆç”Ÿæˆæ™‚ã«æŸ”軟ãªåˆæœŸåŒ–ãŒå¯èƒ½ã¨ãªã‚Šã¾ã™ã€‚
「011 コンストラクタã€å•題集リスト
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント