public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void displayInfo() {
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println();
}
}
public class Main {
public static void main(String[] args) {
// 複数㮠Person オブジェクトを生æˆã—ã¦é…åˆ—ã«æ ¼ç´
Person[] people = new Person[3];
people[0] = new Person("John", 25);
people[1] = new Person("Jane", 30);
people[2] = new Person("Bob", 22);
// ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã®æƒ…å ±ã‚’è¡¨ç¤º
for (Person person : people) {
person.displayInfo();
}
}
}
ã“ã®ä¾‹ã§ã¯ã€Person クラス㌠name 㨠age ã‚’æŒã¡ã€displayInfo() メソッドã§ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã®æƒ…å ±ã‚’è¡¨ç¤ºã—ã¾ã™ã€‚Main クラスã§ã¯ã€ç•°ãªã‚‹åå‰ã¨å¹´é½¢ã‚’æŒã¤è¤‡æ•°ã® Person オブジェクトを生æˆã—ã¦ã€ãれãžã‚Œã®æƒ…å ±ã‚’ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã«è¡¨ç¤ºã—ã¦ã„ã¾ã™ã€‚ã“ã®ã‚³ãƒ¼ãƒ‰ã‚’実行ã™ã‚‹ã¨ã€å„ Person ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã®æƒ…å ±ãŒè¡¨ç¤ºã•れるã§ã—ょã†ã€‚
複数ã®ã‚ªãƒ–ジェクトã¯ç‹¬ç«‹ã—ã¦ã„ã‚‹
オブジェクト指å‘プãƒã‚°ãƒ©ãƒŸãƒ³ã‚°ï¼ˆOOP)ã«ãŠã„ã¦ã€ç•°ãªã‚‹ã‚ªãƒ–ジェクトã¯äº’ã„ã«å½±éŸ¿ã‚’与ãˆãšã€ç‹¬ç«‹ã—ã¦å˜åœ¨ã—ã¦ã„ã¾ã™ã€‚ã“れã¯OOPã®åŸºæœ¬çš„ãªåŽŸå‰‡ã§ã‚る「カプセル化ã€ã‚„ã€Œæƒ…å ±éš è”½ã€ã®è€ƒãˆæ–¹ã«é–¢é€£ã—ã¦ã„ã¾ã™ã€‚
以下ã«ã€ã€Œè¤‡æ•°ã®ã‚ªãƒ–ジェクトã¯ç‹¬ç«‹ã—ã¦ã„ã‚‹ã€åŽŸå‰‡ã«ã¤ã„ã¦è©³ã—ã説明ã—ã¾ã™ï¼š
- ã‚«ãƒ—ã‚»ãƒ«åŒ–ã¨æƒ…å ±éš è”½:
- å„オブジェクトã¯è‡ªèº«ã®å†…éƒ¨çŠ¶æ…‹ã‚’éš è”½ã—ã€å¤–部ã‹ã‚‰ã¯ç›´æŽ¥ã‚¢ã‚¯ã‚»ã‚¹ã•れã¾ã›ã‚“。ã“れã«ã‚ˆã‚Šã€ã‚ªãƒ–ジェクトã®å†…部実装ãŒå¤‰æ›´ã•れã¦ã‚‚ä»–ã®ã‚ªãƒ–ジェクトã«ã¯å½±éŸ¿ã‚’与ãˆã¾ã›ã‚“。
- 独立ã—ã¦å‹•作:
- å„オブジェクトã¯ç‹¬ç«‹ã—ã¦æ©Ÿèƒ½ã—ã€ä»–ã®ã‚ªãƒ–ジェクトã®çŠ¶æ…‹ã‚„æŒ™å‹•ã«å½±éŸ¿ã‚’与ãˆãªã„よã†ã«è¨è¨ˆã•れã¾ã™ã€‚ã“れã«ã‚ˆã‚Šã€ãƒ—ãƒã‚°ãƒ©ãƒ å…¨ä½“ãŒæŸ”軟ã§ä¿å®ˆã—ã‚„ã™ããªã‚Šã¾ã™ã€‚
- クラスã¨ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹:
- クラスã¯è¨è¨ˆå›³ã§ã‚りã€ãれを元ã«ã—ã¦ç”Ÿæˆã•れãŸå„インスタンスã¯ç‹¬ç«‹ã—ã¦å˜åœ¨ã—ã¾ã™ã€‚クラスã®å¤‰æ›´ãŒä»–ã®ã‚¯ãƒ©ã‚¹ã‚„インスタンスã«å½±éŸ¿ã‚’与ãˆãªã„よã†ã«ã™ã‚‹ã“ã¨ãŒé‡è¦ã§ã™ã€‚
- 相互作用ã®åˆ¶å¾¡:
- オブジェクト間ã®ç›¸äº’作用ã¯ã€é©åˆ‡ãªãƒ¡ã‚½ãƒƒãƒ‰ã‚„インタフェースを通ã˜ã¦åˆ¶å¾¡ã•れã¾ã™ã€‚ã“れã«ã‚ˆã‚Šã€ã‚ªãƒ–ジェクトåŒå£«ãŒç›´æŽ¥çš„ã«ä¾å˜ã—ã™ãŽãªã„よã†ã«ãªã‚Šã¾ã™ã€‚
- 独立ã—ãŸçŠ¶æ…‹:
- å„オブジェクトã¯ç‹¬è‡ªã®çŠ¶æ…‹ã‚’æŒã¡ã€ãã®çŠ¶æ…‹ãŒä»–ã®ã‚ªãƒ–ジェクトã«ä¾å˜ã—ãªã„よã†ã«ã—ã¾ã™ã€‚ã“ã®è€ƒãˆæ–¹ã¯ã€ã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ãŒæ‹¡å¼µæ€§ã‚„ä¿å®ˆæ€§ã‚’æŒã¤ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚
ã“ã®åŽŸå‰‡ã«å¾“ã£ã¦è¨è¨ˆã•れãŸã‚ªãƒ–ジェクト指å‘プãƒã‚°ãƒ©ãƒ ã¯ã€æŸ”軟性ãŒã‚りã€å¤‰æ›´ãŒå®¹æ˜“ã§ã€å†åˆ©ç”¨æ€§ãŒé«˜ã„ã¨ã„ã£ãŸåˆ©ç‚¹ã‚’æŒã¡ã¾ã™ã€‚å„オブジェクトãŒç‹¬ç«‹ã—ã¦ã„ã‚‹ã“ã¨ã§ã€ãƒ—ãƒã‚°ãƒ©ãƒ ã®ç†è§£ã‚„メンテナンスもã—ã‚„ã™ããªã‚Šã¾ã™ã€‚
複数ã®ã‚ªãƒ–ジェクトã®ç”Ÿæˆ
複数ã®ã‚ªãƒ–ジェクトを生æˆã¯ä¸‹è¨˜ã®ã‚ˆã†ã«è¡Œã„ã¾ã™ã€‚
クラスã®å®£è¨€
ã¾ãšã€ç•°ãªã‚‹åå‰ã¨å¹´é½¢ã‚’æŒã¤ Person クラスを宣言ã—ã¾ã™ã€‚クラスã¯ã‚ªãƒ–ジェクトを生æˆã™ã‚‹ãŸã‚ã®è¨è¨ˆå›³ã§ã‚りã€ãã®æ§‹é€ を定義ã—ã¾ã™ã€‚以下ã¯ã€Person クラスã®ä¾‹ã§ã™ã€‚
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void displayInfo() {
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println();
}
}
2. 複数ã®ã‚ªãƒ–ジェクトã®ç”Ÿæˆ
次ã«ã€Main クラスã§è¤‡æ•°ã® Person オブジェクトを生æˆã—ã¾ã™ã€‚ã“れã«ã¯ã€é…列やリストを使ã†ã“ã¨ãŒã‚りã¾ã™ã€‚以下ã¯ã€é…列を使用ã—ãŸä¾‹ã§ã™ã€‚
public class Main {
public static void main(String[] args) {
// 複数㮠Person オブジェクトを生æˆã—ã¦é…åˆ—ã«æ ¼ç´
Person[] people = new Person[3];
people[0] = new Person("John", 25);
people[1] = new Person("Jane", 30);
people[2] = new Person("Bob", 22);
// ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã®æƒ…å ±ã‚’è¡¨ç¤º
for (Person person : people) {
person.displayInfo();
}
}
}
3. ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆã®æƒ…å ±ã‚’è¡¨ç¤º
Main クラスã§ã¯ã€Person オブジェクトを生æˆã—ã¦ã€ãれãžã‚Œã®æƒ…å ±ã‚’è¡¨ç¤ºã—ã¦ã„ã¾ã™ã€‚for ループを使用ã—ã¦ã€é…列内ã®å„ Person オブジェクトã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã€displayInfo() メソッドを呼ã³å‡ºã—ã¦æƒ…å ±ã‚’è¡¨ç¤ºã—ã¦ã„ã¾ã™ã€‚
ã“ã®ã‚ˆã†ã«ã—ã¦ã€åŒã˜ã‚¯ãƒ©ã‚¹ã®ç•°ãªã‚‹ã‚ªãƒ–ジェクトを生æˆã—ã€ãれãžã‚Œã®æƒ…å ±ã‚’åŠ¹æžœçš„ã«å‡¦ç†ã§ãã¾ã™ã€‚ã“れãŒã€Œè¤‡æ•°ã®ã‚ªãƒ–ジェクトã®ç”Ÿæˆã€ã®åŸºæœ¬çš„ãªæµã‚Œã§ã™ã€‚
「007 クラスã€å•題集リスト
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント