728x90 반응형 다형성3 40) 인터페이스와 다형성 40) 인터페이스와 다형성 1. 인터페이스를 이용한 다형성 -인터페이스도 구현 클래스의 부모? yes :엄밀히 말하면 부모는 아니다. 부모가 되려면 클래스이어야 하니까. 하지만 부모나 다름없다. 1 2 3 4 class Fighter extends Unit implements Fightable{ public void move(int x, int y){ /*내용 생략*/ } public void attack(Fightable f){ /*내용 생략*/ } } Colored by Color Scripter cs Fighter클래스는 Unit을 상속받고, Fightable을 구현한다. 도식화하자면(상속은 '○'표시로, 인터페이스는 '□'표시로) 원래 같으면 다중 상속은 충돌 문제가 발생한다. Fighter클래스.. 2021. 6. 23. 35) 매개변수의 다형성(2)-하나의 배열로 여러 종류 객체 다루기 35) 매개변수의 다형성(2)-하나의 배열로 여러 종류 객체 다루기 이전 시간에 이어 매개변수 다형성의 장점 2인 하나의 배열로 여러 종류 객체 다루기를 보겠습니다. 1. 여러종류의 객체를 배열로 다루기 -조상 타입의 배열에 자손들의 객체를 담을 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 class Buyer{ int money = 10000; int bonusPoint = 0; Product[] cart = new Product[10]; int i = 0; void buy(Product p) { if(money 2021. 6. 10. 34) 매개변수의 다형성(1)-다형적 매개변수 34) 매개변수의 다형성(1)-다형적 매개변수 장점: ①다형적 매개변수 ②하나의 배열로 여러 종류 객체 다루기 지금까지 배운 다형성: ①Tv t = new SmartTv(); ②참조 변수의 형 변환-리모콘 바꾸기 ③instanceof연산자를 이요한 형변환 가능 여부 판단 1. 매개변수 다형성 -참조형 매개변수는 메서드 호출 시, 자신과 같은 타입 또는 자손 타입의 인스턴스를 넘겨줄 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 class Product{ int price; int bonusPoint; } class Tv extends Product{ } class Aud.. 2021. 6. 10. 이전 1 다음 728x90 반응형