Interface
어떤 규칙을 강제하고 싶은 경우, 규칙을 정의하는 방법 중 하나입니다.
1 | ex) |
2 | interface rule{ |
3 | public void hello(); |
4 | } |
interface를 사용하기 위해서는 사용할 클래스에서 implements 해줘야합니다. implements시, 해당 interface에 있는 메소드는 implements한 클래스에서 재정의 해주어야 합니다.
1 | class innerClass implements rule{ |
2 | |
3 | public void hello(){ |
4 | System.out.println("Hello!"); |
5 | } |
6 | } |
interface는 다중 implements가 가능합니다.
1 | interface rule{ |
2 | public void hello(); |
3 | } |
4 | |
5 | interface rule2{ |
6 | public void goodbye(); |
7 | } |
8 | |
9 | class innerClass implements rule, rule2{ |
10 | |
11 | public void hello(){ |
12 | System.out.println("Hello!"); |
13 | } |
14 | |
15 | |
16 | public void goodbye() { |
17 | System.out.println("good bye!"); |
18 | } |
19 | } |
1 | // 전체적인 코드입니다. |
2 | |
3 | public class main { |
4 | public static void main(String[] args) { |
5 | innerClass a = new innerClass(); |
6 | a.hello(); //interface를 implements한 기능 |
7 | a.goodbye(); //interface를 implements한 기능 |
8 | } |
9 | } |
10 | |
11 | interface rule{ |
12 | public void hello(); |
13 | } |
14 | |
15 | interface rule2{ |
16 | public void goodbye(); |
17 | } |
18 | |
19 | class innerClass implements rule, rule2{ |
20 | |
21 | |
22 | public void hello() { |
23 | System.out.println("hello!"); |
24 | } |
25 | |
26 | |
27 | public void goodbye() { |
28 | System.out.println("good bye!") |
29 | } |
30 | } |
한 파일에 클래스 여러개를 둘 수도 있습니다.