인터페이스의 개념이 확실히 안잡혀서 이것도 생코 들으며 2차 공부 ㅠㅠ
1. 인터페이스란?
규제, 규격, 약속
규제지만, 그것의 목적은 자유다.
내가 원하는 형태를 확실하게 전달한다.
즉, class의 형태를 규정하여 강제로 같은 양식을 사용하도록 제약을 걸어주는 것 !
2.인터페이스의 형식
하나의 clss는 여러 개의 interface를 갖을 수 있다.
interface에는 메소드와 변수가 정의될 수 있는데 , 변수에는 값이 들어오고 메소드에는 실제 구현이 들어가지 않아서
→ 저 메소드를 구현하는 클래스가 (저 형태를 만족하는) 메소드의 내용을 직접 구현해야한다
3.다형성 (Polymorphism)
하나의 class가 여러가지 얼굴을 갖게 하는 것
나에게 필요한 기능만을 골라서 class의 얼굴을 바꾸는 것
4.인터페이스와 다형성
스마트폰 나의스마트폰 = new 스마트폰(); //여러가지 기능을 갖고있는 스마트폰 부모님Interface 부모님의스마트폰 = new 스마트폰(); //부모님은 전화기 기능에만 집중 꼬맹이Interface 꼬맹이의스마트폰 = new 스마트폰(); //꼬맹이는 게임기 기능에만 집중 |
클래스C가 인터페이스 I를 implement 한다. 클래스 C가 obj 라는 이름으로 인스턴스화 될 때 데이터 타입은 인터페이스 I 이다.
인터페이스를 데이터 타입으로 해서 같은 데이터타입을 갖고 있지만, 실제 클래스가 무엇이냐에 따라서 다르게 동작
필요한 기능만 쓰게 하는 것
이고잉님의 찰떡같은 비유
역시 생코를 보니 이해가 더 잘 가서 공부 순서를 아예 바꿔야하나 고민중이다.
생코를 보고 두잇으로 실습하며 공부해야 효율적일듯.
'Programming Language > JAVA' 카테고리의 다른 글
추상클래스(abstract)와 인터페이스(interface) 차이점 (0) | 2023.06.01 |
---|---|
기본 이론(1) (0) | 2023.05.28 |
[Do it 자바 프로그래밍 입문] 10.인터페이스 (0) | 2023.05.25 |
[Do it 자바 프로그래밍 입문] 09.추상 클래스 (0) | 2023.05.24 |
[Do it 자바 프로그래밍 입문] 08.상속과 다형성 (1) | 2023.05.23 |