본문 바로가기
Java

상속 (inheritance)

by 주연배 2024. 3. 17.

 

상속

  • 부모 클래스에서 만들어진 필드, 메소드를 자식 클래스가 물려받는다
  • 동일한 특성을 재정의 할 필요없이 부모 클래스를 호출해주면 된다
  • 클래스의 다중 상속 x
  • 상속 횟수 무제안
  • 상속의 최상위 조상 클래스는 java.lang.Object 클래스

상속의 장점

  1. 클래스의 간결화 
    1. 중복 작성 x
  2. 클래스 관리에 용이하다
    1. 클래스들의 계층적 분류
  3. 소프트웨어의 생산성이 향상된다
    1. 클래스 재사용과 확장에 용이
    2. 새로운 클래스의 작성 속도가 빠르다

 

상속하기

public class 자식클래스 extends 부모클래스

public class Person extends BMI{

}


부모 클래스를 자식 클래스에게 상속해줄 땐 extends를 사용한다

 

다음은 예제를 통해 상속에 대해 좀 더 알아보겠습니다!


>> 점의 좌표를 나타내는 클래스

 

set()메서드를 이용해서 x와 y좌표 설정하고 showPoint()메소드로 좌표를 출력한다

 

>> a_point1을 상속받은 클래스

public class a_ColorPoint2 extends a_Point1
부모 클래스인 a_Point1을 a_ColorPoint2에 상속해준다
setColor(String color)
setCOlor()메소드를 이용해 좌표의 색을 설정한다

 

showColorPoint()메소드를 이용해서 좌표의 색과 좌표를 구해준다.  
System.out.println(color); //컬러 출력
showPoint(); // point()에서 showpoint(좌표) 호출, 이때 point클래스에서 좌표를 만들고 상속 받았으므로 여기에선 호출만 해주면 된다

 

>> 점의 색과 좌표를 출력하는 클래스

	a_Point1 p = new a_Point1();  //p 객체 생성
		p.set(1,2); // 좌표 지정
		p.showPoint(); //지정한 좌표 출력

 

a_ColorPoint2 cp = new a_ColorPoint2(); //객체 생성
		cp.setColor("blue"); // 색 지정
		cp.set(3,4);  // 좌표 지정
		cp.showColorPoint(); // 색과 좌표 출력

 

학생들의 정보를 출력하는 예시 만들어보기

 

  • setWeight(int weight): 몸무게를 설정하는 메서드
  • getWeight(): 몸무게를 반환하는 메서드



     

set()메서드에는 b_Person1 클래스의 멤버 변수들을 초기화 시켜준다
이때 weight 멤버 변수는 private 접근 제어자로 선언되어 있기 때문에 직접 접근할 수 없다.
따라서 setWeight() 메서드를 사용하여 몸무게를 초기화시켜준다


그 후 printStudent()메서드를 만들어서 set()에서 초기화 한 값들을 찍어준다

 

printStudent()메소드를 호출해서 학생들의 정보를 출력한다.

'Java' 카테고리의 다른 글

Math.random( )  (0) 2024.01.13
JAVA 이차원 배열  (0) 2023.07.26
배열  (0) 2023.07.12