예제로 공부하는 Java 100 문제풀이 Part.3
오버 로딩: 객체 생성 시 이에 맞는 생성자를 호출하는 것.
오버 라이딩: 메서드 재정의. 메서드를 다른 용도로 사용하는 것.(덮어쓰는 것)
class Person{
// Field
int gender;
int power;
// Constructor
Person(){
this.gender = 1; // 1:남성, 2:여성
this.power = 100; // 기본 파워
}
// Method
void walk() {
System.out.println("걸어가고 있어요");
}
}
class Hero extends Person{
// Field
String name;
int age;
// Constructor
Hero(){}
Hero(String name, int age){
this.name = name;
this.age = age;
}
// Method
void walk() {
System.out.println("두 배로 빨리 걸어가고 있어요");
}
void eat() {
System.out.println("밥 먹고 있어요");
}
void displayPerson() {
System.out.println("이름:"+name+", "+"나이: "+age+", "+"성별: "+gender+", "+"파워: "+power);
}
}
public class Java100_Ex33 {
public static void main(String[] args) {
//[1]: 객체 생성
Person p1 = new Person();
p1.walk();
// [2]: 상속을 통한 슈퍼맨 생성
Hero h1 = new Hero("슈퍼맨", 20);
System.out.println("이름: "+h1.name);
System.out.println("나이: "+h1.age);
System.out.println("성별: "+h1.gender); // 부모 클래스 필드(변수)
System.out.println("파워: "+h1.power); // 부모 클래스 필드(변수)
}
}
'Backend > Java' 카테고리의 다른 글
[인프런] 객체, 참조값, 요소, 객체 배열 (0) | 2022.03.02 |
---|---|
[인프런] getter, setter, 클래스 (0) | 2022.03.02 |
[인프런] 클래스, 상속, 정의, 개념 (0) | 2022.03.01 |
[인프런] 객체, 생성자, 메서드, 구현 (0) | 2022.03.01 |
[인프런] 클래스, 생성자, 특징, 개념 (0) | 2022.03.01 |