폴리모피즘에 대하여
설명 할 때 항상 읽으므로 요약
폴리모피즘이란?
메시지를 보내는 방법을 공통으로 만드는 것
특징
개념적 측면 (현실 세계)
상위 및 하위 개념 각각의 동사로 성립
공통 동사가 성립
커트를 하나로 하고 있다
기술적 측면 (프로그래밍)
인수를 받은 인스턴스가 클래스에 따라 다르게 동작합니다.
공통의 메소드명으로 성립한다
프로그래밍 기술에 있어서의 「상속」을 이용한 경우
Animal.java
public abstract class Animal {
public abstract void eat();
}
Human.java
public class Human extends Animal {
public void eat() {
System.out.println("ぱくぱくたべる");
}
}
Dog.java
public class Dog extends Animal {
public void eat() {
System.out.println("がぶがぶたべる");
}
}
Chef.java
public class Chef {
public void serve(Animal animal) {
System.out.println("どうぞー");
System.out.println(animal.eat());
}
}
프로그래밍 기술에서 "인터페이스"를 이용한 경우
Eater.java
public interface Eater {
public void eat();
}
Human.java
public class Human implements Eater {
public void eat() {
System.out.println("ぱくぱくたべる");
}
}
Dog.java
public class Dog implements Eater {
public void eat() {
System.out.println("がぶがぶたべる");
}
}
Chef.java
public class Chef {
public void serve(Eater eater) {
System.out.println("どうぞー");
System.out.println(eater.eat());
}
}
포인트
관련 기사
객체 지향으로 왜 만드는지 정리
책 정보
히라자와 장 (저) 오브젝트 지향으로 왜 만드는지 제 2 판
htps : // 아 mz 응. 및 / 2VSr
잡감
디자인 패턴이나 리팩토링에서도 이 시점을 가지고 있으면 잘 적용할 수 있다
Reference
이 문제에 관하여(폴리모피즘에 대하여), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/dich1/items/6768b3c7df45676cfd21텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)