[JAVA] 메소드의 오버라이딩

정은아·2022년 7월 18일
0
post-thumbnail

메소드의 Overriding(오버라이딩)

: 자바언어는 polymorphism(다형성)을 이용하기 위하여
  Overloading과 overriding을 사용합니다.
  오버로딩은 같은 클래스 안에서 이름이 같은 메소드를 2개 이상
  정의하는 것입니다. 반면에 오버라이딩은 상속관계에 있는
  슈퍼 클래스와 서브 클래스에서 같은 이름의 메소드를 정의하는 것 입니다.'
  슈퍼클래스에 있는 메소드의 시그니처와 서브클래스에서 재정의한
  메소드의 시그니처가 동일해야 합니다.
  
 오버로딩                               오버라이딩
  
 class AA                             class BB
  public void display() {}            public void display(int a) {}
  public void display(char b) {}      class CC extends BB {
  												public void display(){}

}

오버라이딩은 기존의 클래스를 이용하여 새로운 클래스를 만들 때,
기존 클래스의 메소드와 의미적으로는 같지만 약간의 변화가 
필요한 메소드를 만들 때 사용합니다.

super

 : this는 객체 자신을 뜻하는 반면에 super는 상속 관계에서
   부모 클래스의 객체를 가르키는 키워드입니다.
   
    1. 상속받은 슈퍼클래스에 있는 멤버 변수나 메소드에 접근할 때
       사용합니다.
       super.멤버변수 , super.멤버메소드(매개변수)
       
    2. 슈퍼클래스의 생성자를 호출할 때 사용합니다. 반드시 첫번째 줄에 기재되어야 합니다.
       super();
profile
꾸준함의 가치를 믿는 개발자

0개의 댓글