생활코딩

Coding Everybody

코스 전체목록

닫기

Overriding vs Overloading

수업소개

부모 클래스의 기능을 재정의 하는 Overriding. 클래스에 같은 이름의 메소드를 복수로 탑재하는 Overloading을 살펴봅니다. 

 

 

 

강의

 

 

 

 

소스코드

https://github.com/egoing/java-inheritance/commit/fa42413244f0d01e9e0c989bb4337179a0217165

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;
    }
}
class Cal3 extends Cal{
    public int minus(int v1, int v2){
        return v1-v2;
    }
    // Overriding
    public int sum(int v1, int v2){
        System.out.println("Cal3!!");
        return v1+v2;
    }

}
public class InheritanceApp {
    public static void main(String[] args) {
        Cal c = new Cal();
        System.out.println(c.sum(2,1));
        System.out.println(c.sum(2,1,1));

        Cal3 c3 = new Cal3();
        System.out.println(c3.sum(2,1));
        System.out.println(c3.minus(2,1));
        System.out.println(c3.sum(2,1));
    }
}
class Cal2{
    public int sum(int v1, int v2){
        return v1+v2;
    }
    public int minus(int v1, int v2){
        return v1-v2;
    }
}

 

댓글

댓글 본문
graphittie 자세히 보기