-
Java - 다형성(Polymarphism)Java 2018. 1. 18. 10:23반응형부모한테 상속받았으면 대입할수 있는것,여러개 만들고 하나로 뭉칠 수 있다.중복되지않게 되면 효율성있게 하나로 뭉치는게 좋다 - 다형성// Children.classpublic class Children extends ParentHouse {@Override // 부모클래스 사용 안할 때public void useRoom() {System.out.println("첫째가 방을 사용 한다.");}}// public은 파일을 대표하는 클래스 하나만 가져 간다. 여러개의 public은 Xclass Children2 extends ParentHouse {@Overridepublic void useRoom() {System.out.println("둘째가 방을 사용 한다.");}class Children3 extends ParentHouse {@Overridepublic void useRoom() {System.out.println("셋째가 방을 사용 한다.");}}class Children4 extends ParentHouse {@Overridepublic void useRoom() {System.out.println("넷째가 방을 사용 한다.");}}// Parent.classpublic class ParentHouse {public void useRoom() {System.out.println("방 하나를 사용 한다.");}}// Main.classpublic static void main(String[] args) {public class Main {public static void main(String[] args) {// 4형제가 각자 useRoom()을 사용Children child = new Children();Children2 child2 = new Children2();Children3 child3 = new Children3();Children4 child4 = new Children4();child.useRoom();child2.useRoom();child3.useRoom();child4.useRoom();}}// 위와 같은 경우는변수가 많아지면 힙 영역의 낭비가 심해 진다.// 그래서 다형성을 활용 하면 효율적으로 메모리를 사용할 수 있다.ParentHouse house; // 부모 타입이 들어가는 변수// house에 자식 객체들이 들어 갈 수 있다.house = new Children();house.useRoom();house = new Children2();house.useRoom();house = new Children3();house.useRoom();house = new Children4();house.useRoom();반응형
'Java' 카테고리의 다른 글
Java - Casting 명시적변환 (0) 2018.01.18 Java - Promotion, Casting 묵시적, 명시적 형변환 (0) 2018.01.18 Java - extends (0) 2018.01.18 Java - Static (0) 2018.01.16 Java Method overLoad (0) 2018.01.16 댓글