å•題
ã‚ãªãŸã¯ã€User クラスã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’生æˆã™ã‚‹ãŸã³ã«ã€
一æ„ã®é€£ç•ªID(ユーザーID) を自動的ã«å‰²ã‚ŠæŒ¯ã‚‹ä»•組ã¿ã‚’作ã‚ã†ã¨ã—ã¦ã„ã¾ã™ã€‚
ID㯠1, 2, 3… ã¨é †ã«å¢—åŠ ã—ã€ã™ã¹ã¦ã® User インスタンスã§é‡è¤‡ã›ãšã«ä¸€æ„ã«ãªã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚
ã“ã®ãŸã‚ã«ã€static 変数を使ã£ã¦ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ç”Ÿæˆæ™‚ã«è‡ªå‹•çš„ã«IDãŒå‰²ã‚ŠæŒ¯ã‚‰ã‚Œã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。
以下ã®ã‚ˆã†ãªå‡ºåŠ›ã«ãªã‚‹ã‚ˆã†ã«å®Ÿè£…ã—ã¦ãã ã•ã„:
[ID: 1] åå‰: Alice
[ID: 2] åå‰: Bob
[ID: 3] åå‰: Carol
è¦ä»¶
Userクラスを作æˆã™ã‚‹ã“ã¨staticãªnextId変数(int型)を用æ„ã—ã€IDã®é€£ç•ªç®¡ç†ã‚’行ã†ã“ã¨- å„インスタンスã¯
id(int型)ã¨name(Stringåž‹ï¼‰ã‚’ä¿æŒã™ã‚‹ã“㨠- コンストラクタã§
idを自動的ã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ï¼ˆnextId++) printInfo()メソッドã§[ID: x] åå‰: yã®å½¢å¼ã§å‡ºåŠ›ã™ã‚‹ã“ã¨- 出力ã«ã¯
System.out.printlnを使用ã™ã‚‹ã“ã¨
テストコード(Main.java)
public class Main {
public static void main(String[] args) {
User u1 = new User("Alice");
User u2 = new User("Bob");
User u3 = new User("Carol");
u1.printInfo();
u2.printInfo();
u3.printInfo();
}
}
ヒント
nextIdã¯ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§å…±æœ‰ã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã®ã§staticidã¯å€‹ã€…ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹å°‚用ãªã®ã§éžstatic- コンストラクタã®ä¸ã§
id = nextId++ã¨ã™ã‚‹ã¨ä¸€æ„ã®ç•ªå·ã‚’割り振れる
104 ステップアップå•題 「static修羅é“ã€
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント