// æ—¢å˜ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイス
interface ExistingInterface {
void existingMethod();
}
// 複数ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’å«ã‚€æ–°ã—ã„æ‹¡å¼µã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイス
interface ExtendedInterface extends ExistingInterface {
void newMethod1();
void newMethod2();
}
// 実装クラス
class MyClass implements ExtendedInterface {
// æ—¢å˜ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®å®Ÿè£…
@Override
public void existingMethod() {
System.out.println("Existing method implementation");
}
// æ–°ã—ã„メソッド1ã®å®Ÿè£…
@Override
public void newMethod1() {
System.out.println("New Method 1 implementation");
}
// æ–°ã—ã„メソッド2ã®å®Ÿè£…
@Override
public void newMethod2() {
System.out.println("New Method 2 implementation");
}
}
// 利用例
public class Main {
public static void main(String[] args) {
MyClass myObj = new MyClass();
// æ—¢å˜ã®ãƒ¡ã‚½ãƒƒãƒ‰å‘¼ã³å‡ºã—
myObj.existingMethod();
// æ–°ã—ã„メソッド呼ã³å‡ºã—
myObj.newMethod1();
myObj.newMethod2();
}
}
ã“ã®ä¾‹ã§ã¯ã€ExistingInterface ã¨ã„ã†æ—¢å˜ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイスを拡張ã™ã‚‹ ExtendedInterface を作æˆã—ã€ãれを実装ã™ã‚‹ MyClass クラスãŒã€æ—¢å˜ã®ãƒ¡ã‚½ãƒƒãƒ‰ã¨æ–°ã—ã„メソッドを実装ã—ã¦ã„ã¾ã™ã€‚
複数ã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’å«ã‚€æ‹¡å¼µ
æ—¢å˜ã®ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイス:
interface ExistingInterface {
void existingMethod();
}
æ–°ã—ã„æ‹¡å¼µã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイス:
interface ExtendedInterface extends ExistingInterface {
void newMethod1();
void newMethod2();
// ä»–ã®æ–°ã—ã„ãƒ¡ã‚½ãƒƒãƒ‰ã‚‚è¿½åŠ å¯èƒ½
}
ã“ã“ã§ã€ExtendedInterface 㯠ExistingInterface ã‚’æ‹¡å¼µã—ã¦ã„ã¾ã™ã€‚
実装クラス:
class MyClass implements ExtendedInterface {
// æ—¢å˜ã®ãƒ¡ã‚½ãƒƒãƒ‰ã®å®Ÿè£…
@Override
public void existingMethod() {
// 実装
}
// æ–°ã—ã„メソッド1ã®å®Ÿè£…
@Override
public void newMethod1() {
// 実装
}
// æ–°ã—ã„メソッド2ã®å®Ÿè£…
@Override
public void newMethod2() {
// 実装
}
}
ã“ã“ã§ã€MyClass クラス㯠ExtendedInterface を実装ã—ã¦ã„ã¾ã™ã€‚ã“ã®ã‚¯ãƒ©ã‚¹ã¯ã€æ—¢å˜ã®ãƒ¡ã‚½ãƒƒãƒ‰ã¨æ–°ã—ã„メソッドを実装ã™ã‚‹è²¬ä»»ãŒã‚りã¾ã™ã€‚
ã“ã®ã‚ˆã†ã«ã—ã¦ã€æ–°ã—ã„æ©Ÿèƒ½ã‚’å«ã‚€æ‹¡å¼µã•れãŸã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイスを作æˆã—ã€ãれを実装ã™ã‚‹ã“ã¨ã§ã€æ—¢å˜ã®ã‚³ãƒ¼ãƒ‰ã«æ–°ã—ã„æ©Ÿèƒ½ã‚’組ã¿è¾¼ã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚
「017 インターフェイスã€å•題集リスト
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント