Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 바텀네비게이션
- 파이썬예제
- 파이썬배열예제
- bottomnavigation
- androidstudio
- 정처기
- 업다운게임코드
- 정보처리산업기사
- 파이썬리스트
- 스누핑
- 프로그래밍
- int크기
- 데이터베이스
- 파이썬
- It
- 정처기운영체제
- 안드로이드
- 코딩
- 컴퓨터일반
- 안드로이드스튜디오
- 백준
- 운영체제종류
- 정처산기
- 자바
- 파이썬배열
- java
- 운영체제목적
- 자바예제
- 코딩공부
- ai
Archives
- Today
- Total
발전을 위한 기록
[Java] 자바 오버로딩(Overloading)과 오버라이딩(Overriding) 본문
728x90
💻 오버로딩(Overloading)
- 메소드 이름은 같지만, 매개변수의 종류나 개수가 다른 여러 버전의 함수를 만드는 것입니다.
💻 오버라이딩(Overriding)
- 부모 클래스에서 이미 정의한 메소드를 자식 클래스에서 같은 이름으로 다시 정의하는 것입니다.
- 자식 클래스에서 부모 클래스의 메소드를 덮어쓸 수 있습니다.
예제
1. 오버로딩
int add(int a, int b) {
return a + b;
}
double add(double a, double b) {
return a + b;
}
- 같은 더하기 연산을 오버로딩하여 정수와 실수를 다룰 수 있도록 합니다.
- add 메소드 이름은 같지만 매개변수의 데이터 타입이 다릅니다.
- 오버로딩을 사용하여 동일한 작업을 다른 데이터 타입으로 수행할 수 있습니다.
2. 오버라이딩
class Animal {
void makeSound() {
System.out.println("동물이 소리를 냅니다.");
}
}
class Dog extends Animal { //extends를 사용하여 상속관계를 나타냅니다.
@Override // 이 부분은 생략해도 되지만 명시적으로 표시하는 것이 좋습니다.
void makeSound() {
System.out.println("개가 짖습니다.");
}
}
- Animal 클래스에 makeSound() 메소드를 정의했으며, 이 메소드는 "동물이 소리를 냅니다."를 출력합니다.
- Dog 클래스는 Animal 클래스를 상속하며, makeSound() 메소드를 오버라이딩하여 "개가 짖습니다."를 출력합니다.
- extends 키워드는 Dog 클래스가 Animal 클래스를 상속한다는 것을 나타냅니다.
- 오버라이딩은 상속 관계에서 부모 클래스의 메소드를 자식 클래스에서 다시 정의하여 새로운 동작을 추가하거나 수정할 수 있습니다.
728x90
'프로그래밍 > 자바' 카테고리의 다른 글
[Java] 자바 예외 처리1 - Checked, Unchecked (0) | 2024.04.01 |
---|---|
[Java] 자바 상속 이해하기 (0) | 2024.02.14 |
[Java] 자바 클래스(Class) 이해하기 (0) | 2024.02.05 |
[Java] 자바 메소드(Method)의 이해와 활용 (0) | 2024.02.04 |
[Java] 자바 배열(array) 이해하기 : 선언과 활용 (0) | 2024.02.03 |