추후 수정 예정
class Cal{
public int sum(int a, int b) {
return a+b;
}
//자식 클래스 Cal2가 가지고 있지 않은 기능을 넣음. 즉 Overloading 함
public int sum(int a, int b, int c) {
return this.sum(a, b)+c;
}
}
class Cal2 extends Cal{
//부모 Cal의 기능을 재 정의함. 즉 Overriding했음
public int sum(int a, int b) {
System.out.println("This is Cal2");
return super.sum(a, b); // 부모클래스 Cal의 sum을 가리키게 됨
}
public int minus(int a, int b) {
return a-b;
}
}
public class InheritanceApp {
public static void main(String[] args) {
Cal c = new Cal();
System.out.println(c.sum(4, 8));
System.out.println(c.sum(4, 8, 12)); //부모 클래스 Cal의 Sum 을 실행ㄴ
Cal2 c2 = new Cal2();
System.out.println(c2.sum(6, 5)); // Cal class를 상속받아서 Sum 기능 사용 가능
System.out.println(c2.minus(6, 5));
}
}
'Develop > JAVA' 카테고리의 다른 글
JAVA - Instance Class 생성시 Constructor와 This (0) | 2022.06.15 |
---|---|
JAVA - Access Level Modifiers, static (0) | 2022.06.14 |
JAVA - Method에서의 return (0) | 2022.06.14 |
JAVA - Method, Class, Instance (0) | 2022.06.13 |
JAVA - 지역변수, 전역변수, 파라미터 (0) | 2022.06.13 |