☕ 자바 JAVA/☕ 클래스와 함수 Class & Method

[JAVA]포함 composite

yeun.log 2024. 3. 22. 22:39
반응형

 

클래스의 관계는 크게
상속과 포함으로 나뉜다
  • 상속관계
    is-a : '~은 ~이다.' 
    extends
    *여러가지 제약이 있으므로 꼭 필요할 때만 사용한다.
  • 포함관계
    has-a : '~은 ~을 가지고 있다.'

 

상속관계 extends를 호출할 때
public class Inheritance {

    public static void main(String[] args) {
        MyCircle myC = new MyCircle();
        myC.x = 1;
        myC.y = 2;
        myC.r = 3;
        System.out.println("myC.x=" + myC.x);
        System.out.println("myC.y=" + myC.y);
        System.out.println("myC.r=" + myC.r);
    }
}

class Point {
    int x;
    int y;
}

class MyCircle extends Point {
    int r;
}

 


 

포함관계를 호출했을 때

 

public class Composite {

    public static void main(String[] args) {
        Circle c = new Circle();
        c.p.x = 1;
        c.p.y = 2;
        c.r = 3;

        System.out.println("c.p.x=" + c.p.x);
        System.out.println("c.p.y=" + c.p.y);
        System.out.println("c.r=" + c.r);
    }
}

class Point {
    int x;
    int y;
}

class Circle {
    Point p = new Point(); // 원점
    int r; // 반지름
}

 

왤케 아는 것도 첨보는 게 하나씩 보이는 지 T T

반응형