다형성과 오버로딩, 오버라이딩
다형성
하나의 메서드나 클래스가 있을 때 그것이 다양한 방법으로 동작하는 것을 말하며,
오버라이딩과 오버로딩을 통해서 지원함
오버라이딩(overrriding) / 재정의
상위 클래스가 가지고 있는 메서드를 하위 클래스가 재정의 해서 사용하는것
오버로딩(ovveroading) / 확장
같은 이름의 메서드 여러 개를 가지면서 매개변수의 유형과 개수가 다르게 사용하는 것
오버라이딩(overrriding)
상위 클래스로부터 상속받은 메서드의 동작을 재정의 하는 것
메서드의 이름, 매개변수 반환형이 같음
public class Animal{
public void sound(){
System.out.println("울음소리");
}
}
public class Cat extend Animal{
@Override
public void sound(){ //재정의 해서 사용
System.out.println("야옹");
}
}
오버로딩(overroding)
하나의 클래스 안에 같은 이름의 메서드를 여러 개 정의하고,
매개변수의 유형과 개수를 다르게 하여 다양한 유형의 호출에 응답할 수 있는 방식
public class Test(){
public void overloadingTest(){
Sysytem.out.println("매개변수를 받지 않는 메서드")
}
public void overloadingTest(int a, int a){
Sysytem.out.println("매개변수 int형 두개" + a+","+b)
}
public void overloadingTest(String str){
Sysytem.out.println("매개변수 String 한개" +str)
}
}
'CS' 카테고리의 다른 글
[Java] 자바 컴파일 / JVM / JDK (0) | 2024.07.30 |
---|---|
[CS] DDL, DML, DCL (0) | 2024.05.10 |
[CS] 세션(Session)과 쿠키(Cookie) (0) | 2024.05.08 |
[CS] HTTP, HTTPS (0) | 2024.05.08 |
[CS] 메모리 구조 (0) | 2024.05.08 |