본문 바로가기

오버로딩

(2)
[Java] 오버라이딩 오버라이딩 자바 질문 중에 단골로 나오는 오버로딩과 오버라이딩.. 오버라이딩은 저번에 공부를 했으니 오버라이딩을 공부해보았다. 기억하기 쉽게 오버로딩과 오버라이딩의 차이도 적어놨다. 그리고 상속에서 다루지 못한 super가 책에 함께 언급되어 같이 적어보았다. 이 두 개밖에 없어서 오늘의 공부 필기는 다른 포스팅에 비해 분량이 적을 것 같다. 오버라이딩은 상속받은 메소드의 내용을 변경하는 것이다. 부모 클래스에 존재하던 메소드가 현재 클래스에 맞지 않는 경우 재정의가 가능하다. 오버라이딩은 메소드의 내용만 새로 작성하는 것으로 조건이 몇 가지 존재하는데, 선언부(이름, 매개변수, 리턴 타입)가 같아야 한다. 접근 제어자(public, private 등)를 좁은 범위로 변경할 수 없다. 메소드의 인스턴스와..
[Java] 오버로딩 오버로딩 하나의 클래스 내에 같은 이름의 메소드를 여러 개 정의하는 것이다. 하나의 이름을 가진 메소드에 여러 가지 기능을 과적(overloading)한 것이라고 생각하면 된다. 오버로딩의 조건 메소드의 이름이 같고, 매개변수의 개수와 타입이 달라야 한다. 이름이 같아도 매개 변수로 구분이 가능해지기 때문에 오버 로딩이 성립하는 것이다. 오버로딩의 예시 println 메소드가 대표적인 예이다! 데이터 타입에 따라 오버로딩 된 메소드들 중 하나가 실행된다. void println(int x); void println(String x); 오버로딩의 장점 이름을 고민할 필요가 없어진다. 같은 기능을 하는데 파라미터가 다양한 경우, 오버로딩이 불가능하다면각자 다 다른 이름을 정해야 할 것이다. 이 문제를 해결해..