Java - 오버로딩(overloading), 오버라이딩(overriding)

박민수·2023년 11월 14일
0

Java

목록 보기
10/13
post-thumbnail

개요

해당 포스팅에서는 오버로딩과 오버라이딩에 대해서 간략하게 정리해 보고자 한다.

오버로딩(overloading)

오버로딩이란 하나의 클래스에 같은 이름의 메서드를 여러 개 정의하는 것이다.
기존에 없는 새로운 메서드를 정의하는 것 (new)

오버라이딩의 조건

  • 메서드의 이름이 같아야 한다.
  • 매개변수의 개수 또는 타입이 달라야 한다.
  • 매개변수는 같고 리턴타입이 다른 경우는 오버로딩이 성립되지 않는다. (리턴타입은 오버로딩을 구현하는데 아무런 영향을 주지 않음)

오버라이딩(overriding)

오버라이딩이란 조상 클래스로부터 상속받은 메서드의 내용을 상속받는 클래스에 맞게 변경하는 것이다.
상속받은 메서드의 내용을 변경하는 것 (change, modify)

오버라이딩의 조건

  • 선언부가 같아야 한다. (이름, 매개변수, 리턴타입)
  • 접근제어자를 좁은 범위로 변경할 수 없다.
  • 조상클래스의 메서드보다 많은 수의 예외를 선언할 수 없다.

참조
Java의 정석 기초편 (남궁성 지음)

profile
안녕하세요 백엔드 개발자입니다.

0개의 댓글

관련 채용 정보