분류 전체보기67 12. 생성자, 기본 생성자 생성자 인스턴스가 생성될 때마다 호출되는 인스턴스 초기화 메서드 이다. 즉, 인스턴스 생성시 인스턴스 변수들을 초기화 해주는 것이다. 생성자의 규칙 이름이 클래스 이름과 동일해야 한다. 리턴 값이 없다. (void를 붙이지 않음.) 모든 클래스는 반드시 한 개이상의 생성자를 가져야 한다. 생성자를 명시하지 않은 메서드의 경우 기본 생성자를 가진다. 기본 생성자 매개변수가 없는 생성자 생성자가 하나도 없을 때만, 컴파일러가 자동으로 추가한다. 컴파일러가 자동으로 추가하지만, 기본 생성자를 직접 작성 해주는 것이 좋다. 생성자 오버로딩을 통해, 다양한 생성자를 선언한 경우에는 기본 생성자를 명시하지 않으면 에러가 발생한다. public class ConstrutorEx { public static void .. 2022. 9. 24. 11. static 메서드와 instance 메서드 static 메서드와 instance메서드의 차이를 확실히 알고, 언제 사용하는 지 알아야 한다. 아래 코드를 통해 살펴보자. class MyMath{ long a, b; // 인스턴스 변수 // 인스턴스 메서드: 인스턴스 변수 사용 long add() { return a+b; } // static 메서드 : 인스턴스 변수 사용x static long add(long a, long b) { return a+b; } } public class methodEx { public static void main(String[] args) { // static 메서드 호출: 클래스 이름 사용해서 호출 System.out.println("static 메서드 사용 : " + MyMath.add(10, 20)); // .. 2022. 9. 20. 10. 참조형 반환타입 메서드의 return 타입이 참조형인 경우, 스택의 흐름이 어떻게 되는지 확실히 알고 익숙해져야 한다. class Data2 { int x; } public class ReferenceReturnEx { public static void main(String[] args) { Data2 d = new Data2(); d.x = 100; Data2 d2 = copy(d); System.out.println("d.x = " + d.x); System.out.println("d2.x = " + d2.x); } static Data2 copy(Data2 d) { Data2 tmp = new Data2(); tmp.x = d.x; return tmp; } } 해당 코드는 copy라는 메서드의 반환 타입을 Data.. 2022. 9. 20. 9. 기본형&참조형 매개변수 기본형 매개변수: 변수의 값을 읽기만 할 수 있다. (Read only) 참조형 매개변수: 변수의 값을 읽고 변경할 수 있다. (Read & Write) (매개변수의 타입이 기본형이 아니면 모두 참조형이다.) 아래 코드를 통해, 참조형 매개변수와 기본형 매개변수의 차이를 살펴보자. 아래 코드의 스택 흐름을 꼭 그릴 줄 알아야 한다. class Data { int x; } public class parametersEx { public static void main(String[] args) { Data d = new Data(); d.x = 10; System.out.println("초기 d.x의 값 :: " + d.x); // 기본형 매개변수를 가지는 함수 change(d.x); System.out.pr.. 2022. 9. 20. 이전 1 ··· 7 8 9 10 11 12 13 ··· 17 다음