티스토리 뷰
728x90
반응형
1) 특징
- 클래스의 멤버로 참조변수를 선언하는 것
class Circle {
int x; //원점의 x좌표
int y; //원점의 y좌표
int r; //원점의 r좌표
}
-> 위 예시를 포함으로 변환시
class Circle {
Point c = new Point(); //원점
int r; //반지름
}
class Point {
int x;
int y;
}
2) 클래스 간의 관계 결정하기
- 상속관계 : ~은 ~이다. (class Circle extends Point{} )
- 포함관계 : ~은 ~을 가지고 있다. (Point c = new Point ();)
ex.
원은 점을 가지고 있다(o) (포함관계)
원은 점이다(x) (상속관계)
3) 포함예시
package ch6;
class MyPointt{
int x;
int y;
}
class Circleee { //포함
MyPointt p = new MyPointt(); //참조변수 초기
int r;
}
public class CompositeTest {
public static void main(String[] args) {
Circleee c = new Circleee();
c.p.x=1;
c.p.y=2;
c.r=3;
System.out.println(c.p.x);
System.out.println(c.p.y);
System.out.println(c.r);
}
}
4) 상속예시
package ch6;
class MyPoint {
int x;
int y;
}
class Circle extends MyPoint { //상속
int r;
}
public class InheritanceTest {
public static void main(String[] args) {
Circle c = new Circle();
c.x = 1;;
c.y = 2;
c.r = 3;
System.out.println("c.x="+c.x);
System.out.println("c.y="+c.y);
System.out.println("c.r="+c.r);
}
}
728x90
반응형
'Java > JAVA의 정석_객체지향' 카테고리의 다른 글
Super VS Super() (0) | 2022.10.31 |
---|---|
오버라이딩(Overriding) (0) | 2022.10.30 |
상속(Inheritance) (0) | 2022.10.30 |
참조변수 this VS this() (0) | 2022.10.26 |
constructor(생성자) (0) | 2022.10.26 |
댓글
250x250
반응형
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday