CS(Computer science) - 상식(Overloading vs Overriding)

HJ-C·2023년 1월 2일
post-thumbnail

오버로딩(Overloading)

  • 메서드의 이름은 같고 매개변수의 개수나 타입이 다른 함수를 정의하는 것을 의미한다.(클래스 안에서 같은 이름의 메서드를 정의하게 되면 에러 발생)
  • 리턴값만 다르게 갖는 오버로딩은 작성 할 수 없다.
  • 매개변수의 개수, 타입이 달라야 한다.
  • 기존에 없던 새로운 메서드를 정의

오버라이딩(Overriding)

  • 상위 클래스의 메서드를 하위 클래스가 재정의(변경) 하는 것.
  • 메서드의 이름은 물론 parameter의 개수타입도 동일해야 하며, 주로 상위 클래스의 동작을 상속받은 하위 클래스에서 변경하기 위해 사용한다.
  • 상속 받은 메서드의 내용만 변경

오버로딩 vs 오버라이딩

구분오버로딩오버라이딩
메소드 이름동일동일
매개변수, 타입다름동일
리턴 타입상관없음동일

profile
생각을 기록하자

0개의 댓글