오버로딩(Overloading)이라는 뜻은 사전적으로 '과적하다.'라는 뜻으로, 오버로딩이란 ? 한 클래스 내에서 같은 이름의 메서드를 여러 개 정의하는 것을 말합니다. 오버로딩의 조건 오버로딩이 성립되기 위해선 다음과 같은 조건을 만족해야합니다. 1. 메서드 이름이 같아야 한다. 2. 매개변수의 개수 또는 타입이 달라야 한다. 비록 메서드의 이름이 같더라도 매개변수가 다르면 서로 구별될 수 있기 때문에 오버로딩이 가능합니다. 위의 조건을 만족시키지 못할시에는, 메서드가 중복으로 간주되어 컴파일 시 에러가 발생합니다. 주의할 점으로는 반환 타입( 리턴 타입 )은 오버로딩을 구현하는데 아무런 영향을 주지 않습니다. 오버로딩 예시 코드 아래 코드는 전부 오버로딩의 조건을 만족합니다. class Overloa..
클래스 변수와 인스턴스 변수에서도 그랬듯이, 메서드 앞에 static이 붙으면 클래스 메서드, 없으면 인스턴스 메서드 입니다. 클래스 메서드도 클래스 변수처럼, 객체를 생성하지 않고도 "클래스이름.메서드이름(매개변수)"와 같은식으로 호출이 가능합니다. 반면에, 인스턴스 메서드는 반드시 객체를 생성해야만 호출이 가능합니다. (Java/자바) 클래스 변수, 인스턴스 변수, 지역 변수란? 이 글을 읽기 앞서 자바의 클래스와 객체란? 인스턴스란 ? 무엇인지 모른다면 아래 포스팅을 참고하시면 좋습니다. (Java/자바) 클래스와 객체 클래스와 객체 클래스와 객체를 설명하는 예시로 여 hstory0208.tistory.com 인스턴스 메서드 인스턴스 메서드는 인스턴스 변수와 관련된 작업을 하는, 즉 메서드의 작업을..
재귀호출이란 ? 메서드의 내부에서 메서드 자신을 다시 호출하는 것을 말합니다. 그리고 재귀호출을 하는 메서드를 "재귀 메서드"라고 합니다. void method() { method(); // 재귀호출. 메서드 자신을 호출한다. } 그런데 오로지 재귀호출뿐이라면, 무한히 자기 자신을 호출하기 때문에 무한 반복에 빠지게 됩니다. 무한반복문이 조건문과 함께 사용되어야 하는 것처럼, 재귀호출도 조건문이 필수적으로 따라다닙니다. void method(int n) { if(n==0) return; // n의 값이 0이라면 메서드 종료. System.out.println(n); method(--n); // 재귀호출. } 반복문보다 재귀호출이 더 빠른가 ? 결론부터 말하면 아닙니다. 메서드를 호출하는 것은 반복문보다 ..
메서드 ( Method ) 메서드란 특정 작업을 수행하는 문장들을 하나로 묶은 것으로 수학의 함수와 비슷합니다. 대표적으로 절댓값을 구하는 메서드 Math.abs(-3)을 실행하면 3의 결과를 반환합니다. 메서드를 사용하는 이유 1. 높은 재사용성 ( reusability ) 이미 자바 API에서 제공하는 메서드들을 사용하면서 코딩의 편리함을 느끼실 겁니다. 이렇게 메서드를 한번 만들어 놓으면 몇 번이고 호출할 수 있으며, 다른 프로그램에서도 사용이 가능합니다. 2. 중복된 코드의 제거 프로그램을 작성하다 보면, 같은 내용의 문장들이 중복되곤 합니다. 이렇게 반복되는 문장들을 묶어 하나의 메서드로 작성해 놓으면, 중복을 제거하고 메서드를 호출함으로써 대체할 수 있습니다. public static void..
이 글을 읽기 앞서 자바의 클래스와 객체란? 인스턴스란 ? 무엇인지 모른다면 아래 포스팅을 참고하시면 좋습니다. (Java/자바) 클래스와 객체 클래스와 객체 클래스와 객체를 설명하는 예시로 여러 예시가 있습니다. 게임 비유 : 클래스(직업)에 따라 클래스(직업)에 맞는 아이템과 동작들이 주어져서 객채가 생성되는 것. 붕어빵 비유 : hstory0208.tistory.com 자바에서 변수는 클래스 변수, 인스턴스 변수, 지역 변수로 모두 3가지의 변수가 있습니다. 그리고 클래스 변수와, 인스턴스 변수를 "멤버변수"라고 합니다. class test { int a; // 인스턴스 변수 static int b;// 클래스 변수 (static 변수, 공유 변수) // 메서드 영영 void method() { i..
클래스와 객체클래스와 객체를 설명하는 예시로 여러 예시가 있습니다.- 게임 비유 : 클래스(직업)에 따라 클래스(직업)에 맞는 아이템과 동작들이 주어져서 객채가 생성되는 것.- 붕어빵 비유 : 클래스라는 모형틀(붕어빵틀)을 만들고 팥을 넣고 구워 객채(붕어빵)를 만든다.이러한 예시를 보고 클래스와 객체가 무엇인지 아래 설명을 본다면 좀 더 이해가 쉬울 겁니다. 클래스클래스란 "객체를 정의해놓은 것" 또는 "객체의 설계도 또는 틀"이라고 정의할 수 있습니다.클래스는 객체를 생성하는데 사용되며, 객체는 클래스에 정의된 대로 생성됩니다.- 클래스의 정의 : 객체를 정의해 놓은 것- 클래스의 용도 : 객체를 생성하는데 사용 객체객체는 "실제로 존재하는 것"으로 우리가 주변에서 볼 수 있는 책상, 의자, 컴퓨터..