728x90 진행중인 학습/자바의 정석_학습16 자바의 정석_기초편 CHAPTER 6 中 33 ~ 39 자바의 정석_기초편 CHAPTER 6 中 33 ~ 39 6-33. 기본 생성자 (default constructor) 모든 클래스에는 반드시 하나 이상의 생성자가 정의되어 있어야 함. 그러나 지금까지 클래스에 생성자를 정의 하지 않고도 인스턴스를 생성할 수 있었던 이유는 컴파일러가 제공하는 '기본 생성자(default constructor)' 덕분 이었음. 생성자가 1도 정의되지 않은 경우 컴파일러는 자동으로 기본 생성자를 추가하여 컴파일 한다. 클래스 이름() { } // 기본 생성자 Point() { } // Point클래스의 기본 생성자. 컴파일러가 자동으로 추가해주는 기본 생성자는 위 처럼 변수도 없고 아주 간단한 것들이다. 기본 생성자가 컴파일러에 의해서 추가되는 경우는 클래스에 정의된 생성자가.. 2023. 8. 23. 자바의 정석_기초편 CHAPTER 6 中 26 ~ 32 (230821) 자바의 정석_기초편 CHAPTER 6 中 26 ~ 32 (230821) 6-26. static 메서드와 인스턴스 메서드. 메서드 앞에 static이 붙어 있으면 클래스메서드이고 붙어 있지 않으면 인스턴스 메서드. 클래스 메서드도 클래스 변수처럼, 객체를 생성하지 않고도 '클래스이름.메서드이름(매개변수)' 와 같은 식으로 호출이 가능. 반면 인스턴스 메서드는 반드시 객체를 생성해야만 호출할 수 있다. 참고) 클래스 영역에 선언된 변수를 멤버변수. 이 중에 static이 붙은 것은 클래스변수(static변수), static이 붙지 않은 것은 인스턴스변수. 멤버변수는 인스턴스변수와 static 변수를 모두 통칭하는 말. 6-28. static을 언제 붙여야 하나 1. 클래스를 설계할 때, 멤버변수 중 모든 인.. 2023. 8. 21. 자바의 정석_기초편 CHAPTER 6 中 20 ~ 25 (230818) 자바의 정석_기초편 CHAPTER 6 中 20 ~ 25 (230818) 6-20. return 문. return 문은 현재 실행중인 메서드를 종료 후 호출한 메서드로 되돌아간다. 반환값의 유무에 관계없이 모든 메서드에는 적어도 하나의 return문이 있어야 하지만 반환타입이 void 인 경우, return 문 없어도 아무런 문제가 없었던 이유는 컴파일러가 메서드의 마지막에 ' return; ' 을 자동적으로 추가해주었기 때문. 6-21. 반환값. return 문의 반환값으로 주로 변수가 오긴 하지만 항상 그런 것은 아니다. 수식이 반환되는 것은 아니고, 이 수식을 계산한 결과가 반환됨. 6-22. 호출 스택 (call stack) 호출스택은 메서드의 작업에 필요한 메모리 공간을 제공한다. 메서드가 호출되.. 2023. 8. 18. 자바의 정석_기초편 CHAPTER 6 中 14 ~ 17 (230816) 자바의 정석_기초편 CHAPTER 6 中 14 ~ 17 (230816) 6-14. 메서드란? 메서드(method) 는 특정 작업을 수행하는 일련의 문장들을 하나로 묶은 것. 수학의 함수와 유사, 어떤 값을 입력하면 이 값으로 작업을 수행해서 결과를 반환한다. 크게 두 부분, 선언부(header, 머리) 와 구현부(body, 몸통) 로 이루어져 있다. 6-15. 메서드의 선언부. 메서드 선언부는 '메서드의 이름' 과 '매개변수 선언', 그리고 '반환타입' 으로 구성되어 있으며, 메서드가 작업을 수행하기 위해 어떤 값들을 필요로 하고 작업의 결과로 어떤 타입의 값을 반환하는지에 대한 정보를 제공한다. 매개변수 선언 메서드가 작업을 수행하는데 필요한 값들(입력) 을 제공받기 위한 것이며, 필요한 값의 개수만큼.. 2023. 8. 16. 자바의 정석_기초편 CHAPTER 6 中 9 ~ 12 (230814) 자바의 정석_기초편 CHAPTER 6 中 9 ~ 12 (230814) 6-9. 클래스의 정의 (1) - 데이터와 함수의 결합. 프로그래밍적인 관점에서 클래스의 정의와 의미를 살펴본다. 프로그래밍언어에서 데이터 처리를 위한 데이터 저장형태의 발전 과정. 변수 -> 배열 -> 구조체 -> 클래스 1. 변수 : 하나의 데이터를 저장할 수 있는 공간 2. 배열 : 같은 종류의 여러 데이터를 하나의 집합으로 저장할 수 있는 공간 3. 구조체 : 서로 관련된 여러 데이터를 종류에 관계없이 하나의 집합으로 저장할 수 있는 공간 4. 클래스 : 데이터와 함수의 결합 (구조체 + 함수) 6-10. 클래스의 정의 (2) - 사용자 정의 타입. 프로그래밍언어에서 제공하는 기본 자료형 외에 프로그래머가 서로 관련된 변수들을 .. 2023. 8. 14. 자바의 정석_기초편 CHAPTER 6 中 1 ~ 8 (230811) 자바의 정석_기초편 CHAPTER 6 中 1 ~ 8 (230811) 6-1. 객체지향 언어. 객체지향언어는 기존의 프로그래밍언어와 다른 전혀 새로운 것이 아니라, 기존의 프로그래밍 언어에 몇 가지 새로운 규칙을 추가한 것보다 발전된 형태의 것. 규칙들을 이용해서 코드 간의 서로 관계를 맺어 줌으로써 보다 유기적으로 프로그램을 구성하는 것이 가능해짐. 객체지향언어의 주요 특징. 1. 코드의 재사용성이 높다. (가장 큰 장점!!) - 새로운 코드 작성 시 기존의 코드를 이용해 쉽게 작성 가능. 2. 코드의 관리가 용이함. - 코드간의 관계를 이용해 적은 노력으로 쉽게 코드를 변경 가능. 3. 신뢰성이 높은 프로그래밍을 가능하게 함. - 제어자와 메소드를 이용해 데이터를 보호하고 올바른 값을 유지하도록 하며,.. 2023. 8. 11. 자바의 정석_기초편 CHAPTER 5 中 12 ~ 24 (230809) 자바의 정석_기초편 CHAPTER 5 中 12 ~ 24 (230809) 5-12. String배열의 선언과 생성. String 인 경우에도 int 배열의 선언과 생성 방법은 다르지 않다. String[] name = new String[3]; // 3개의 문자열을 담을 수 있는 배열을 생성한다. 3개의 String 타입의 참조변수를 저장하기 위한 공간이 마련되고 참조형 변수의 기본값은 null 이므로 각 요소의 값은 null로 초기화 된다. 아래의 표는 변수의 타입에 따른 기본값이다. 자료형 기본값 boolean false char '\u0000' byte, short, int 0 long 0L float 0.0f double 0.0d 또는 0.0 참조형 null 5-13. String배열의 초기화 in.. 2023. 8. 9. 이전 1 2 3 다음 728x90