목차
- Aggregation Hierarchy
- Specialization Hierarchy
a. Overriding / Polymorphism
- JDK
a. Composite Pattern (Component / Container)
b. Graphics (Graphics Transformation)
1. Aggregation Hierarchy
포함 관계라는 것은 다른 의미로 명령의 지휘 체계라고도 할 수 있다.
2. Specialization Hierarchy
- Overriding (오버라이딩)
오버라이딩이란 상속 관계에 있는 부모 클래스에서 이미 정의된 메소드를 자식 클래스에서 재정의하는 것이다.
b. Polymorphism (다형성)
다형성이란 하나의 객체가 여러 가지 타입을 가질 수 있는 것을 의미한다. 자바에서는 이러한 다형성을 부모 클래스 타입의 참조 변수로 자식 클래스 타입의 인스턴스를 참조할 수 있도록 하여 구현하고 있다. 다형성은 상속, 추상화와 더불어 객체 지향 프로그래밍을 구성하는 중요한 특징 중 하나이다.
참고 출처 : http://www.tcpschool.com/java/java_polymorphism_concept
3. JDK
a. Composite Pattern (Component / Container)
- 컴포넌트 : 컴포넌트는 다른 컴포넌트를 포함할 수 없으며, 모든 컴포넌트는 컨테이너에 포함되어야 화면에 출력이 가능하다.
- 모든 컴포넌트는 Component 클래스를 상속받는다.
- 컨테이너 : 다른 컴포넌트들을 포함할 수 있는 컨테이너
- JPanel, JFrame 등이 속하며 Container 클래스를 상속받는다.
그래픽스는 자바에서 제공하는 것으로 컴포넌트 그리기에 필요한 도구를 제공하는 객체이다. 그림을 그리는데 필요한 모든 설정값과 그림 그리는 메소드를 가지고 있다.
참고 출처 : https://movefast.tistory.com/47
- 직선 : drawLine(), drawPolyline()
- 사각형 : drawRect(), fillRect(), clearRect()
- 3차원 사각형 : draw3DRect(), fill3DRect()
- 둥근 사각형 : drawRoundRect(), fillRoundRect()
- 문자열 : drawString()
- 이미지 : drawImage()
- 다각형 : drawPolygon(), fillPolygon()
- 호 : drawArc(), fillArc()
- 타원 : drawOval(), fillOval()