상속이란 ?
새로운 객체가 기존 객체가 갖고 있는 변수나 메소드를 그대로 물려받으면서, 자신만의 새로운 변수와 메소드를 추가하거나, 기존의 변수와 메소드를 변경해서 사용할 수 있는것
extends
하나의 자식이 여러 부모를 갖는 다중 상속은 불가능하다. 하지만, 부모가 여러 자식을 가지는 것은 가능하다.
코드의 중복을 제거할 수 있다.
코드의 재활용성이 높다
package pr01;
class Calculator {
int left, right;
public Calculator(int a, int b){
this.right=a;
this.left=b;
}
public void sum(){
System.out.println(this.left+this.right);
}
public void avg(){
System.out.println((this.left+this.right)/2);
}
}
class Subtract extends Calculator{ // 부모 : Calculator, 자식 : Substract
public Subtract(int a, int b) {
super(a, b);
}
public void sub(){
System.out.println(this.left-this.right);
}
}
class Multiply extends Subtract{ // 부모 : Subtract, 자식 : Multiply
public Multiply(int left, int right){
super(left, right);
}
public void multi(){
System.out.println(this.left*this.right);
}
}
public class test {
public static void main(String[] args) {
Calculator c1 = new Calculator(20,10);
c1.sum(); c1.avg(); //c1.sub(); c1.multi();
Subtract s1 = new Subtract(20,10);
s1.sum();s1.avg();s1.sub(); // s1.multi();
Multiply m1 = new Multiply(20,10);
m1.sum();m1.avg();m1.sub();m1.multi();
}
}