오버로딩(Overloading) & 오버라이딩(Overriding)

scheuun·2023년 9월 1일
0
post-thumbnail
  • 오버로딩 (Overloading):
    메소드 이름은 동일하나 매개변수가 다른 경우 사용된다. 즉, 같은 이름의 메소드를 여러 개 정의하고, 각 메소드는 매개변수의 수나 타입이 다르게 설정된다.
    오버로딩은 정적 다형성(Compile-time Polymorphism)을 구현한다. 컴파일 시에 어떤 메소드가 호출될지 결정된다.

  • 오버라이딩 (Overriding):
    서브클래스에서 슈퍼클래스의 메소드를 다시 정의하는 것을 의미한다. 메소드 이름, 매개변수 타입 및 반환 타입은 동일해야 한다.
    오버라이딩된 메소드는 슈퍼클래스의 메소드 대신 호출된다. 이로써 서브클래스는 슈퍼클래스의 메소드 동작을 재정의할 수 있다.
    오버라이딩은 동적 다형성(Runtime Polymorphism)을 구현한다. 어떤 메소드가 실행될지는 실행 시간에 객체의 실제 타입에 따라 결정된다

profile
java 개발자

0개의 댓글