이번 시간에는 자바에서 중요한 개념인 상속성(Inheritance)에 대해서 글을 쓸까 합니다.
상속이란?
기존 클래스에 작은 기능이나 특성을 추가하여 새로운 클래스로 만드는 것을 의미합니다
즉 부모클래스를 만들고, 그 부모클래스에 있는 속성과 기능을 자식클래스에서 상속받아, 새로운 기능과 속성을 추가하는 것입니다.
-상속 개념을 적용함으로써 개발시간 단축, 재사용성 등에 놀라운 장점이 있습니다.
아래는 자바의 상속 예제 소스코드입니다.
class Human{
String name;
int height;
public void showInfo(){
System.out.println("이름 : "+name);
System.out.println("키 : "+height);
}
public Human(String name, int height){
this.name=name;
this.height=height;
}
}
// 슈퍼맨 클래스는 Human 클래스를 상속받는다
class Superman extends Human{
int power;
public Superman(){
super("슈퍼맨", 170); // super() : 부모클래스(Human)의 생성자
//this("슈퍼맨", 190, 940); // super, this 둘 중에 딱 하나만 사용해야함
}
public Superman(String name, int height, int power){
super(name, height); // Human 클래스의 생성자로 값이 전달
this.power=power; // power는 Superman 클래스에서 설정
}
}
public class Inheritance {
public static void main(String[] args) {
Superman s1 = new Superman("슈퍼맨", 190 ,940);
Superman s2 = new Superman("슈퍼보이", 290 ,540);
Superman s3 = new Superman("슈퍼슈퍼", 390 ,740);
// 배열 활용
Superman[] arr = new Superman[3]; // Superman 형 데이터를 저장할 배열 선언
arr[0]=s1;
arr[1]=s2;
arr[2]=s3;
arr[0].showInfo();
arr[1].showInfo();
arr[2].showInfo();
}
}
}
댓글 없음:
댓글 쓰기