'오버라이딩' 태그의 글 목록 :: 놓치기 쉬운 정보 저장
728x90
반응형
SMALL

abstract, 추상 메서드에 대해서 알아보겠습니다.

 

개념 : 자식 클래스에서 반드시 오버 라이딩해야만 사용할 수 있는 메서드를 의미합니다. 자바에서 추상 메소드를 선언하여 사용하는 목적은 추상 메서드가 포함된 클래스를 상속받는 자식 클래스가 반드시 추상 메서드를 구현하도록 하기 위함입니다.

 

단어 뜻
추상 메서드 설명
추상 메서드 위치
추상 클래스
추상 클래스에 오버라이딩과 구현하기
특징
코드 구현

728x90
반응형
LIST
728x90
반응형
SMALL

super & super()에 대해서 알아보겠습니다.

 

super  : 객체 리터럴 또는 클래스의 [Prototype] 속성에 액세스 하거나 슈퍼클래스의 생성자를 호출하는 데 사용되고, 필드명 중복 또는 메서드 오버라이딩으로 가려진 부모의 필드/메서드를 호출하기 위해 주로 사용합니다.

코드 중복 및 메모리 사용 절약을 위해 활용합니다.

 

super() : 생성자 내부에서만 사용 가능, 반드시 중괄호 이 후 첫 줄에 위치하여야 합니다. 자식 클래스 생성자의 첫 줄에는 반드시 this() 또는 super()이 포함되어야 합니다.

 

 

super 설명
super 주요 사용되는 이유
super() 설명
super() 설명(1) 코드 적용 예
super() 설명(2) 코드 적용 예

 

 

이상 super & super() 에 대해서 알아보았습니다.

728x90
반응형
LIST
728x90
반응형
SMALL

instance 멤버와 static 멤버의 오버 라이딩에 대해서 알아보겠습니다.

 

오버 라이딩 가능 여부

 

- instance 필드 : NO!

- instance 메서드 : YES! (메서드 오버 라이딩)

- static 필드 : NO!

- static 메서드 : NO!

 

필드, 메서드별 오버라이딩 정리
instance 필드 적용 예

 

static 필드 적용 예

 

static 메서드 적용 예

 

이상 필드와 instance 멤버와 static 멤버의 오버 라이딩에 대해서 알아보았습니다.

728x90
반응형
LIST
728x90
반응형
SMALL

메서드 오버라이딩(Overriding)에 대해서 알아보겠습니다.

 

메서드 오버라이딩(Overriding) : 서로 다른 여러 메소드를 하나의 이름으로 정의하는 것으로, 상속 관계에 있는 부모 클래스에서 이미 정의된 메소드를 자식 클래스에서 같은 시그니쳐를 갖는 메소드로 다시 정의하는 것이라고 할 수 있습니다.

자바에서는 자식 클래스는 부모 클래스의 private 멤버를 제외한 모든 메소드를 상속받습니다.

이렇게 상속받은 메소드는 그대로 사용해도 되고, 필요한 동작을 위해 재정의하여 사용할 수도 있습니다.

사용 조건 :

1. 메소드의 선언부가 기존 메소드와 같아야 한다.
    * 하지만 메소드의 반환 타입은 부모 클래스의 반환 타입으로 타입 변환할 수 있는 타입이라면 변경 가능
2. 부모 클래스의 메소드보다 접근 제어자를 더 좁은 범위로 변경할 수 없습니다
3. 부모클래스의 메소드보다 더 큰 범위의 예외를 선언할 수 없습니다.

 

정의 및 조건
메모리 구조
대표적인 사용 예
대표적인 사용 예(1)
메서드 오버라이딩과 오버로딩 간단 비교
접근지정자 비교

 

이상 메서드 오버라이딩(Overriding)에 대해서 알아보았습니다.

728x90
반응형
LIST

+ Recent posts