package ex0723;
public class Ex02_override {
public static void main(String[] args) {
Sample2 s = new Sample2();
s.print();
s.write();
}
}
class Test2 {
int a= 10;
public void print() {
System.out.println("a:"+a);
}
}
class Sample2 extends Test2 {
int x = 100;
public void write() {
super.print();
}
// 재정의되는 메소드의 접근 제어자는 크거나 같아야 한다.
// 메소드 override : 메소드의 시그니처가 동일해야 한다.
// 상위 클래스의 메소드를 재정의하면 재정의된 상위 클래스의 메소드는 숨는다.
@Override // 메소드가 오버라이드 규칙에 맞는지를 검증하고 맞지 않으면 에러 발생
public void print() {
System.out.println("a:"+a+ ",x:"+x);
}
// overloading
public void print(int n) {
System.out.println(n);
}
'쌍용강북교육센터 > 7월' 카테고리의 다른 글
0723_Ex04_ClassTypeCast (0) | 2021.07.23 |
---|---|
0723_Ex03_ClassTypeCast : up-casting, down-casting (0) | 2021.07.23 |
0723_Ex01_override (0) | 2021.07.23 |
0722_Ex06_override : 오버라이드 상속 재정의 (0) | 2021.07.22 |
0722_Ex05_Inheritance : 상위 클래스 하위 클래스 (0) | 2021.07.22 |