클래스 상속과 객체

kkjj·2022년 3월 8일
0

상속과 객체

  • 예제를 통해서 상속의 실제 사례와 상속과 객체 사이의 관계를 알아보기

Ex -1)

class Point{
private int x,y; //한 점을 구성하는 x,y 좌표
public void set (int x,int y){
this.x =x;
this.y =y;
}
public void showPoint() {
//점의 좌표 출력
System.out.println("("+ x +"," + y + ")");
}
}
class ColorPoint extends Point{
//Point를 상속받은 ColorPoint 선언
private String color; //점의 색깔
public void setColor(String color) {
this.color= color;
}
public void showColorPoint(){ //컬러 점의 좌표출력
System.out.print(color);
showPoint(); // Point클래스의 showPoint() 호출
}
}

public class ColorPointEx{
public static void main(String[] args){
Point p = new Point();//Point 객체 생성
p.set(1,2); // Point 클래스의 set()호출
p.showPoint();

ColorPoint cp =. ew ColorPoint();// ColorPoint 객체생성
cp.set(3,4); // Point 클래스의 set() 호출
cp.setColor("red"); //ColorPoint 클래스의 setColor()호출
cp.showColorPoint(); // 컬러와 좌표 출력
}
}

--> 결과
(1,2)
red(3,4)

서브 클래스 객체 생성

상속에서 일차적으로 이해해야 하는것은 바로 서브클래스 객체의 모양이다. 다음은 Point 클래스의 객체와 ColorPoint클래스의 객체를 생성하는코드이다

Point p = new Point();
ColorPoint cp = new ColorPoint(); // 서브 클래스 객체생성

이 코드를 보면 생성된 객체 p와cp를 보여주는데 , 이 둘은 별개의 객체이다.
객체 p 는 Point 클래스의 멤버만 가지고, cp는 Point 클래스와 Color Point 클래ㅑ스의 멤버를 모두 가진다.
상속은 바로 cp객체 처럼 슈퍼 클래스의 멤버와 서브 클래스의 멤버를 모두 갖고 탄생하게 하는것이다!

profile
백엔드

0개의 댓글