오버로딩과 오버라이딩의 차이점

2022. 10. 26. 16:42·STUDY/JAVA
반응형

1. 오버로딩(Overloading) : 같은 클래스 내에서 이름은 같지만 매개변수의 갯수나 타입이 다른 메소드를 정의하는 것.

특징 :
1. 메소드의 이름이 같아야함
2. 오버로딩하는 메서드와의 차이점이 있어야함(매개변수의 개수, 데이터 타입)
3. 차이점에 리턴형은 포함되지 않음

 

이런식으로 사각형의 크기를 구하는 메서드를 정사각형일 경우에는 width하나만, 직사각형일 경우에는 width, height 두가지를 이용해서 오버로딩할 수 있다.

 

 

 

2. 오버라이딩(Overriding)

오버라이딩은 상위클래스의 메서드를 하위클래스에서 재정의하는 것.

특징 : 
1. 상위클래스에 같은 이름의 메서드가 존재해야 함
2. 상위클래스의 매개변수와 반환형이 같아야 함
3. 객체지향 언어의 특징인 다형성 중 하나
4. 새로운 예외를 throws 할 수 없다.

 

위와같이 부모클래스에서는 파이 값을 3.14159로 계산하지만 자식클래스에서 더 정확한 계산을 위해 Math.PI 상수를 사용했다.

@Override는 생략해도 괜찮지만 붙여주면 areaCircle()이 정확히 오버라이딩 된 것인지 컴파일러가 체크하기 때문에 실수를 줄여준다.

 

자식클래스에서 부모 클래스의 메소드를 오버라이딩하게 되면 부모 클래스의 메소드는 숨겨지고 자식메소드만 사용하게된다.

이때 부모 클래스의 메소드를 호출해야하는 상황이 발생하면 super키워드를 붙여 부모 메서드를 호출 할 수 있다.

부모 메소드의 fly()는 일반비행이지만 자식메서드에서는 초음속비행과 부모메서드의 일반비행 두가지로 동작하도록 설계했다.

 

반응형
저작자표시 (새창열림)

'STUDY > JAVA' 카테고리의 다른 글

string 배열 비교(참조타입 배열 비교)  (0) 2022.10.27
List와 Array(배열)의 차이점 + ArrayList  (0) 2022.10.27
JAVA - Stream(스트림)  (0) 2022.05.16
JAVA - @Override(메소드 재정의)  (0) 2022.05.11
JAVA - 상속(Inheritance)  (0) 2022.05.11
'STUDY/JAVA' 카테고리의 다른 글
  • string 배열 비교(참조타입 배열 비교)
  • List와 Array(배열)의 차이점 + ArrayList
  • JAVA - Stream(스트림)
  • JAVA - @Override(메소드 재정의)
3unB
3unB
  • 3unB
    ILLILI
    3unB
  • 전체
    오늘
    어제
    • 분류 전체보기 (158)
      • STUDY (107)
        • JAVA (30)
        • SPRING (29)
        • JSP (11)
        • DATABASE (19)
        • HTML (0)
        • CSS (4)
        • GITHUB (2)
        • ETC (4)
        • 자격증 (1)
        • ERROR (6)
      • PROJECT (6)
        • Personal_Project 01 - commu.. (1)
        • TeamProject - JOINUS (4)
      • EUNB (30)
        • 맛집 (27)
        • 여행 (3)
        • 전세사기 (0)
      • 오블완챌린지 ++ (11)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 짱민지
    • 아랄이
  • 공지사항

  • 인기 글

  • 태그

    Database
    배열 한 컬럼에 넣기
    전포동 핫플
    전포 데이트
    콩콩팥팥 맛집
    alter
    콩콩팥팥 두부
    전포 연어덮밥
    서면 맛집
    망미 테린느
    전포 맛집
    속초 중앙시장 감자전
    전포동 맛집
    인제 두부
    전포동 카페
    티스토리챌린지
    속초 숙소 내돈내산
    망미 바
    전포 밥집
    전포 신상 맛집
    망미 카페
    전포 오꼬노미야끼
    인제 고향집
    oracle
    망미 조용한 카페
    센텀 신세계백화점 팝업
    서면 설야멱
    mysql
    속초 해변 숙소
    오블완
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.0
3unB
오버로딩과 오버라이딩의 차이점
상단으로

티스토리툴바