å•題
ãƒãƒªãƒ¢ãƒ¼ãƒ•ィズムã«ãŠã„ã¦ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å®Ÿéš›ã®åž‹ãŒä¸æ˜Žãªå ´åˆã®æ³¨æ„点を考ãˆã‚‹å•題。インスタンスãŒç‰¹å®šã®åž‹ã§ã‚ã‚‹ã‹ã©ã†ã‹ã‚’確èªã—ã¦ã‹ã‚‰ãƒ€ã‚¦ãƒ³ã‚ャストã—ã€NullPointerException を回é¿ã—ã¦ã¿ã¦ãã ã•ã„。
ヒント
instanceof演算åã®ä½¿ç”¨:- ダウンã‚ャストã™ã‚‹å‰ã«ã€å¯¾è±¡ã®ã‚ªãƒ–ジェクトãŒç‰¹å®šã®åž‹ã§ã‚ã‚‹ã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ãŸã‚ã«
instanceof演算åを使用ã—ã¾ã™ã€‚ instanceof演算åã¯ã€å¯¾è±¡ã®ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆãŒæŒ‡å®šã•れãŸåž‹ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§ã‚ã‚‹å ´åˆã«trueã‚’è¿”ã—ã€ãれ以外ã®å ´åˆã«ã¯falseã‚’è¿”ã—ã¾ã™ã€‚
- ダウンã‚ャストã™ã‚‹å‰ã«ã€å¯¾è±¡ã®ã‚ªãƒ–ジェクトãŒç‰¹å®šã®åž‹ã§ã‚ã‚‹ã‹ã©ã†ã‹ã‚’確èªã™ã‚‹ãŸã‚ã«
- æ¡ä»¶åˆ†å²ã§ã®åž‹ç¢ºèª:
instanceof演算åã®çµæžœã«åŸºã¥ã„ã¦æ¡ä»¶åˆ†å²ã‚’行ã„ã¾ã™ã€‚- ã‚‚ã—ã‚ªãƒ–ã‚¸ã‚§ã‚¯ãƒˆãŒæŒ‡å®šã•れãŸåž‹ã§ã‚れã°ã€å®‰å…¨ã«ãƒ€ã‚¦ãƒ³ã‚ャストを行ã„ã¾ã™ã€‚
- ãã†ã§ãªã„å ´åˆã€ãƒ€ã‚¦ãƒ³ã‚ャストを行ã‚ãšã«å‡¦ç†ã‚’スã‚ップã™ã‚‹ãªã©ã€é©åˆ‡ãªå¯¾å¿œã‚’行ã„ã¾ã™ã€‚
- NullPointerException を回é¿:
- ダウンã‚ャストã™ã‚‹å‰ã«ã€ã‚ªãƒ–ジェクトãŒ
nullã§ãªã„ã“ã¨ã‚‚確èªã—ã¾ã™ã€‚ nullã®å ´åˆã«ã¯ãƒ€ã‚¦ãƒ³ã‚ャストを行ã‚ãšã«ã€ä¾‹å¤–を回é¿ã—ã¾ã™ã€‚
- ダウンã‚ャストã™ã‚‹å‰ã«ã€ã‚ªãƒ–ジェクトãŒ
- 例外処ç†ã®è€ƒæ…®:
- ダウンã‚ャストã«å¤±æ•—ã—ãŸå ´åˆã«å‚™ãˆã¦ã€é©åˆ‡ãªä¾‹å¤–処ç†ã‚’検討ã—ã¾ã™ã€‚
- 例外処ç†ã«ã‚ˆã‚Šã€ãƒ—ãƒã‚°ãƒ©ãƒ ã®å®Ÿè¡ŒãŒä¸æ–ã•れるã“ã¨ãªã安全ã«å‡¦ç†ã‚’続行ã§ãã¾ã™ã€‚
ã“れらã®ãƒã‚¤ãƒ³ãƒˆã‚’考慮ã—ã¦ã€ãƒãƒªãƒ¢ãƒ¼ãƒ•ィズムã«ãŠã„ã¦ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®å®Ÿéš›ã®åž‹ãŒä¸æ˜Žãªå ´åˆã®å®‰å…¨ãªãƒ€ã‚¦ãƒ³ã‚ャストを行ã†ã‚³ãƒ¼ãƒ‰ã‚’構築ã—ã¦ã¿ã¦ãã ã•ã„。
→解ç”例
「015 ãƒãƒªãƒ¢ãƒ¼ãƒ•ィズムã€å•題集リスト
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント