자바의 오버로딩(Overloading) 과 오버라이딩(Overriding)

2020. 10. 20. 10:37Android

728x90

1. 메서드 오버로딩(Overloading) 이란?

  • 함수의 이름을 똑같이 하여 사용하기 편하게 한 것
  • 파라미터의 데이터 타입이 다르던지 파라미터의 데이터 타입이 같으면 갯수가 달라야 한다.

2. 상속 이란?

  • 겹치는 것을 하나의 클래스로 묶고 상속받게 하는 것

 

3. 다형성 - 상속받은 기본 형질에 서로 다른 변화를 준다.

  • 사람의 경우 부모님으로부터 태어난 형제라도 외모나 성격, 취향 등이 서로 다른 것 처럼 클래스도 동일한 클래스로부터 상속받은 하위 클래스들을 각기 다르게 수정하여 사용할 수 있다.

4. 메서드 오버라이딩(Overriding) 이란?

  • 부모클래스에게 물려받은 함수를 자식클래스에서 변형하여 사용 할 수 있는 것

5. 생성자(Constructor)

  • 생성자는 객체 생성 시 자동으로 호출되는 메서드로 멤버 변수의 초기화나, 객체가 생성되자마자 실행해야 할 코드로 구성된다. 생성자는 함수 타입이 없고 객체를 생성할 때를 제외하고는 클래스 밖에서 호출 할 수 없다는 점을 제외하면 일반 메서드와 동일하다. 생성자를 정의하는 방법은 다음과 같다.
  • 함수 타입(리턴 값)이 없다.
  • 이름은 항상 클래스와 동일해야한다.
  • 오버로딩이 가능하므로 여러개 만들 수 있다.

 

 

생성자 오버로드

6. this 란? 

  • 자기자신의 객체를 가리키는 것

객체는 힙(Heap)에 생성 됨

7. super 란?

  • 부모의 객체를 가리키는 것

클래스 내의 멤버 접근 제어자

 

8. getter, setter 

  • 멤버변수를 직접 건들지 못하게 하고 함수를 제공한다.
  • 왜냐면 멤버변수를 private으로 했으니까

728x90