Javaã«ãŠã„ã¦ã€staticメンãƒã¯é‡è¦ãªæ¦‚念ã§ã‚ã‚Šã€æ£ã—ãç†è§£ã™ã‚‹ã“ã¨ã¯ãƒ—ãƒã‚°ãƒ©ãƒŸãƒ³ã‚°ã®åŸºç¤Žã‚’築ã上ã§é‡è¦ã§ã™ã€‚
- クラスレベルã®ãƒ¡ãƒ³ãƒ:
staticメンãƒã¯ã‚¯ãƒ©ã‚¹ãƒ¬ãƒ™ãƒ«ã«å˜åœ¨ã—ã€ç‰¹å®šã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã«ç´ã¥ã„ã¦ã„ã¾ã›ã‚“。ã“れã«ã‚ˆã‚Šã€ã‚¯ãƒ©ã‚¹ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’作æˆã—ãªãã¦ã‚‚直接アクセスã§ãã¾ã™ã€‚ã“れã¯ã€ã‚¯ãƒ©ã‚¹å…¨ä½“ã§å…±æœ‰ã•れるデータや機能を表ç¾ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚ - メモリ効率:
staticメンãƒã¯ä¸€åº¦ã ã‘メモリã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã€ã‚¯ãƒ©ã‚¹ãŒãƒãƒ¼ãƒ‰ã•れるã¨ãã«åˆæœŸåŒ–ã•れã¾ã™ã€‚ã“れã«ã‚ˆã‚Šã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã”ã¨ã«é‡è¤‡ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ã‚’æŒãŸãªã„ãŸã‚ã€ãƒ¡ãƒ¢ãƒªã®ä½¿ç”¨åŠ¹çŽ‡ãŒå‘上ã—ã¾ã™ã€‚ - クラスメソッド:
staticメソッドã¯ã‚¯ãƒ©ã‚¹ãƒ¡ã‚½ãƒƒãƒ‰ã¨å‘¼ã°ã‚Œã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’作æˆã›ãšã«å‘¼ã³å‡ºã™ã“ã¨ãŒã§ãã¾ã™ã€‚ã“れã«ã‚ˆã‚Šã€ã‚¯ãƒ©ã‚¹ã«é–¢é€£ã™ã‚‹å‡¦ç†ã‚’行ã†å ´åˆã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®ç”ŸæˆãŒä¸è¦ã§ã€ã‚·ãƒ³ãƒ—ルã‹ã¤åŠ¹çŽ‡çš„ãªã‚³ãƒ¼ãƒ‰ã‚’書ãã“ã¨ãŒã§ãã¾ã™ã€‚ - 共有ã®ãƒ‡ãƒ¼ã‚¿:
staticメンãƒã¯ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§å…±æœ‰ã•れるãŸã‚ã€ã‚るインスタンスã§å¤‰æ›´ã•れãŸå€¤ã¯ä»–ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã«ã‚‚åæ˜ ã•れã¾ã™ã€‚ã“れã¯ã€ã‚°ãƒãƒ¼ãƒãƒ«å¤‰æ•°ã®ã‚ˆã†ã«ç‰¹å®šã®ã‚¯ãƒ©ã‚¹ã§å…±æœ‰ã•れるデータを管ç†ã™ã‚‹ã®ã«ä¾¿åˆ©ã§ã™ã€‚ - é™çš„ブãƒãƒƒã‚¯:
staticメンãƒã¯é™çš„åˆæœŸåŒ–ブãƒãƒƒã‚¯ã‚’使用ã—ã¦åˆæœŸåŒ–ã§ãã¾ã™ã€‚ã“ã®ãƒ–ãƒãƒƒã‚¯ã¯ã‚¯ãƒ©ã‚¹ãŒåˆã‚ã¦èªã¿è¾¼ã¾ã‚Œã‚‹ã¨ãã«ä¸€åº¦ã ã‘実行ã•れã€åˆæœŸåŒ–ã®ãŸã‚ã®è¤‡é›‘ãªãƒã‚¸ãƒƒã‚¯ã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ - プãƒã‚°ãƒ©ãƒ ã®ãƒ‘フォーマンスå‘上:
staticメソッドやstatic変数をé©åˆ‡ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã§ã€ã‚ªãƒ–ジェクトã®ç”Ÿæˆã‚„メソッドã®å‘¼ã³å‡ºã—ã«ä¼´ã†ã‚ªãƒ¼ãƒãƒ¼ãƒ˜ãƒƒãƒ‰ã‚’減らã—ã€ãƒ—ãƒã‚°ãƒ©ãƒ ã®ãƒ‘フォーマンスをå‘上ã•ã›ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
ç·ã˜ã¦ã€staticメンãƒã¯ã‚¯ãƒ©ã‚¹å…¨ä½“ã§å…±æœ‰ã•れるデータや機能をæä¾›ã—ã€åŠ¹çŽ‡çš„ãªãƒ—ãƒã‚°ãƒ©ãƒ è¨è¨ˆã«å¯„与ã—ã¾ã™ã€‚æ£ã—ã使用ã™ã‚‹ã“ã¨ã§ã€ã‚¯ãƒ©ã‚¹ã®æ©Ÿèƒ½ã‚’より効果的ã«åˆ©ç”¨ã§ãã¾ã™ã€‚

ç·´ç¿’å•題
Javaプãƒã‚°ãƒ©ãƒŸãƒ³ã‚°ã«ãŠã„ã¦ã€staticメンãƒã¯ã‚¯ãƒ©ã‚¹ã«ãŠã‘ã‚‹é‡è¦ãªæ¦‚念ã®ä¸€ã¤ã§ã™ã€‚ã“れã¯ã€ã‚¯ãƒ©ã‚¹å…¨ä½“ã§å…±æœ‰ã•れる変数やメソッドを定義ã™ã‚‹ã®ã«å½¹ç«‹ã¡ã¾ã™ã€‚staticメンãƒã¯ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã«ä¾å˜ã›ãšã€ã‚¯ãƒ©ã‚¹ãŒãƒãƒ¼ãƒ‰ã•れるã¨ãã«åˆæœŸåŒ–ã•れã¾ã™ã€‚
以下ã®å•題ã§ã¯ã€staticメンãƒã®ç†è§£ã‚’æ·±ã‚ã‚‹ãŸã‚ã«ç°¡å˜ãªã‚¯ãƒ©ã‚¹ã‚’対象ã«ã—ã¦ã„ã¾ã™ã€‚ãれãžã‚Œã®å•題ã«å–り組んã§ã€staticメンãƒãŒã©ã®ã‚ˆã†ã«å‹•作ã™ã‚‹ã‹ã‚’ç†è§£ã—ã¦ãã ã•ã„。
static変数
012-001 å•題 解ç”例
012-002 å•題 解ç”例
staticメソッド
012-003 å•題 解ç”例
012-004 å•題 解ç”例
012-005 å•題 解ç”例