본문 바로가기

오버로딩2

[Java 공부/Java의 정석] Chapter.07 : 객체지향 프로그래밍 2 - 2 (오버라이딩) 오버라이딩 부모 클래스로부터 상속받은 메서드의 내용을 변경하는 것을 오버라이딩이라고 한다. 상속받은 메서드를 그대로 사용하기로 하지만, 자식 클래스 자신에 맞게 변경해야하는 경우가 많다. 이럴 때 부모의 메서드를 오버라이딩한다. 예제 class point {//2차원 좌표 int x; int y; String getLocation() { return "x: " + x + ", y: " + y; } } 2차원 좌표계의 한 점을 표현하기 위한 point 클래스가 있을 때, 이를 부모로 하는 3차원 좌표계의 한 점을 표현하기 위한 point3D 클래스를 새로 작성하였다고 하자. point 클래스의 getLocation()은 한 점의 x, y좌표를 문자열로 반환한다. class point3D extends po.. 2022. 7. 6.
[Java 공부/Java의 정석] Chapter.06 : 객체지향 프로그래밍 1 - 4 (오버로딩) 오버로딩이란 메서드도 변수와 마찬가지로 같은 클래스 내에서 서로 구별될 수 있어야 하기 때문에 각기 다른 이름을 가져야 한다. 그러나 자바에서는 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메서드가 있더라고 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메서드를 정의할 수 있다. 한 클래스 내에서 같은 이름의 메서드를 여러 개 정의하는 것을 '오버로딩'이라고 한다. 오버로딩의 조건 오버로딩이 성립하기 위해서는 다음과 같은 조건을 만족해야 한다. 1. 메서드 이름이 같아야 한다. 2. 매개변수의 개수 또는 타입이 달라야 한다. 메서드의 이름이 같더라도 매개변수가 다르면 서로 구별될 수 있기 때문에 오버로딩이 가능한 것이다. 위 조건들을 만족시키지 못하는 메서드는 중복 정의로 간주되.. 2022. 7. 1.