Java/Java의 정석

220216 Java - 상속

Remind123 2022. 2. 17. 00:39

1.
기존의 클래스를 상속받아 새 클래스를 만들 수 있는데
이를 통해서 재사용성을 높이고 유지보수의 편의성을 높이고 가독성을 높이고 코드의 양 또한 줄일 수 있다.

2. 
overriding을 통해 기존에 상속받은 것에 새로운 기능을 추가할 수 있다. 즉, 상속받은 것을 '재정의' 할 수 있게 된다. 

class A extends B 의 형식으로 A가 B를 상속 받고
새로운 기능을 추가할 수도 있으며 B에 있던 메소드를 그대로 가져와서 원하는 대로 override 할 수 있다.

3.

overload는 과적. 기존에 존재하는 method에 이름이 같은 method를 다른 형태로 사용하는 것.
class Cal {
public int sum(int v1, int v2) {
return v1+v2;
     }

// overloading
public int sum(int v1, int v2, int v3) {
return v1+v2+v3;

          }

}

4.
this는 자기 자신, super는 부모 클래스에 해당하는 메소드를 지칭하게 된다.

5.
생성자가 있는 class를 상속받았다면 생성자를 만들어서 부모 클래스를 반드시 호출해야 한다.

class Cal{
public int v1,v2;
public Cal(int v1, int v2){
System.out.println("Cal init!!");
this.v1 = v1; this.v2 = v2;
}
public int sum() {
return this.v1+v2;
}
}

class Cal3 extends Cal {

public Cal3(int v1, int v2) {
super(v1, v2);
System.out.println("Cal3 init!!");
}
public int minus() {
return this.v1-v2;
}
}


많이 쳐보면서 익숙해져야 할 것 같음. 코딩 하는 속도가 너무 느리다.