오버로딩(Overloading)
매개변수의 유형과 개수를 다르게 하여 같은 이름의 메서드를 여러 개 가지는 기법
예시)
public class Calculator {
public int add(int a, int b){
return a+b;
}
public double add(double a, double b){
return a+b;
}
public String add(String a, String b){
return a+b;
}
}
위와 같이 오버로딩을 사용하면, 매개변수의 유형을 다르게 하여 같은 이름의 메서드를 여러 개 가질 수 있게 한다.
오버라이딩(Overriding)
상위 클래스에서 정의한 일반 메서드의 구현을 하위 클래스에서 무시하고 재정의 할 수 있는 기법
예시)
class Animal {
public void makeSound() {
System.out.println("동물이 소리를 내고 있습니다.");
}
}
class Dog extends Animal {
@Override
public void makeSound() {
System.out.println("멍멍!");
}
}
class Cat extends Animal {
@Override
public void makeSound() {
System.out.println("야옹~");
}
}
위와 같이 오버라이딩을 사용하면, 부모 클래스의 메서드를 자식 클래스에서 필요에 맞게 재정의가 가능하여 다형성을 활용할 수 있다.
반응형
'Dev > Spring&Java' 카테고리의 다른 글
Java.lang.OutOfMemoryError: Java heap space (0) | 2023.11.16 |
---|---|
[Java] 자바에서 JSON 배열 사용하기 (org.json.JSONArray) (0) | 2023.11.08 |
[Java] 접근 제어자(Access Modifiers) 활용해보기 (0) | 2023.09.11 |
[Java] 접근 제어자(Access Modifiers) 이해하기 (0) | 2023.09.11 |
[Java] static 이해하기 (0) | 2023.09.09 |