ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Java - 다형성(Polymarphism)
    Java 2018. 1. 18. 10:23
    반응형
    부모한테 상속받았으면 대입할수 있는것,

    여러개 만들고 하나로 뭉칠 수 있다.

    중복되지않게 되면 효율성있게 하나로 뭉치는게 좋다 - 다형성
    // Children.class

    public class Children extends ParentHouse {

                @Override // 부모클래스 사용 안할 때
                public void useRoom() {
                    System.out.println("첫째가 방을 사용 한다.");
                }
            
            }
            
            // public은 파일을 대표하는 클래스 하나만 가져 간다. 여러개의 public은 X
            class Children2 extends ParentHouse {
            
                @Override
                public void useRoom() {
                    System.out.println("둘째가 방을 사용 한다.");
                }

    class Children3 extends ParentHouse {
                @Override
                public void useRoom() {
                    System.out.println("셋째가 방을 사용 한다.");
                }
            }
            class Children4 extends ParentHouse {
                @Override
                public void useRoom() {
                    System.out.println("넷째가 방을 사용 한다.");
                }
            }


    // Parent.class

    public class ParentHouse {
        
                public void useRoom() {
                    System.out.println("방 하나를 사용 한다.");
                }
            
            }


    // Main.class

    public 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

    댓글

Designed by Tistory.