- [ 정리/Java ]자바의 정석 연습문제 ch 6 객체지향 프로그래밍(1)2023-08-31 11:49:54자바의 정석 3판 기초판 연습문제 https://github.com/castello/javajungsuk3 GitHub - castello/javajungsuk3: soure codes and ppt files of javajungsuk 3rd edition soure codes and ppt files of javajungsuk 3rd edition - GitHub - castello/javajungsuk3: soure codes and ppt files of javajungsuk 3rd edition github.com [6-1] 다음과 같은 멤버변수를 갖는 SutdaCard클래스를 정의하시오. 타입 변수명 설명 int num 카드의 숫자(1~10사이의 정수) boolean isKwang 광이면 tr..
- [ 정리/Java ]자바의 정석 연습문제 ch5 배열2023-08-31 07:33:43자바의 정석 3판 기초판 연습문제 https://github.com/castello/javajungsuk3 GitHub - castello/javajungsuk3: soure codes and ppt files of javajungsuk 3rd edition soure codes and ppt files of javajungsuk 3rd edition - GitHub - castello/javajungsuk3: soure codes and ppt files of javajungsuk 3rd edition github.com [5-1] 다음은 배열을 선언하거나 초기화 한 것이다. 잘못된 것을 고르고 그 이유를 설명 하시오. a. int[] arr[]; b. int[] arr = {1,2,3,}; c. in..
- [ 정리/Java ]자바의 정석 연습 문제 ch4 조건문과 반복문2023-08-15 02:01:42자바의 정석 3판 기초판 연습문제 https://github.com/castello/javajungsuk3 GitHub - castello/javajungsuk3: soure codes and ppt files of javajungsuk 3rd edition soure codes and ppt files of javajungsuk 3rd edition - GitHub - castello/javajungsuk3: soure codes and ppt files of javajungsuk 3rd edition github.com [4-1] 다음의 문장들을 조건식으로 표현하라. 1. int형 변수 x가 10보다 크고 20보다 작을 때 true인 조건식 10 < x && x < 20 2. char형 변수 ch가 ..
- [ 정리/Java ]자바의 정석 ch10 날짜와 시간 & 형식화2023-08-13 06:07:05ch 10-1~3 날짜와 시간 Calendar 클래스 1. 날짜와 시간 java.util.Date : 날짜와 시간을 다룰 목적으로 만들어진 클래스 java.util.Calendar : Date클래스를 개선한 새로운 클래스 java.time패키지 : JDK1.8 Date와 Calendar의 단점(날짜와 시간을 같이 다룸 등)을 개선한 새로운 클래스 제공 2. Calendar 클래스 추상 클래스이므로 getInstance()통해 구현된 객체를 얻어야함 // 에러 추상 클래스는 인스턴스를 생성할 수 없음 // Calendar cal = new Calendar(); // getInstance() 메서드를 이용해 Calendar클래스를 구현한 인스턴스 반환 Calendar cal = Calendar.getInst..
- [ 정리/Java ]자바의 정석 109~113강 ch9 java.lang 패키지와 유용한 클래스(2)2023-08-13 02:37:48ch 9-15~18 StringBuffer클래스 1. StringBuffer클래스 문자형 배열 char[] 을 내부적으로 가지고 있음 String과 다르게 내용 변경 가능 mutable append() : 문자열을 추가할 수 있음 2. StringBuffer의 생성자 배열을 이용해 문자열을 다루기 때문에 배열의 길이가 부족하면 새로운 배열을 생성해야 함 → 저장할 문자열 길이를 고려해 생성 크기 미설정시 기본 크기 16 3. StringBuffer의 변경 append() : 지정된 내용 추가 후 StringBuffer 참조 반환 StringBuffer sb = new StringBuffer("abc"); sb.append("123").append("zz"); // append()메서드는 StringBuf..
- [ 정리/Java ]자바의 정석 104~108강 ch9 java.lang 패키지와 유용한 클래스(1)2023-08-12 07:17:21ch 9-1~3 Object 클래스 equals() 1. Object 클래스 모든 클래스의 최고 조상, 메서드 11개, notify(), notifyAll(), wait() 쓰레드 관련 메서드 Object 클래스 메서드 설명 protected Object clone() 객체 자신의 복사본 반환 public boolean equals(Object obj) 객체 자신과 객체 obj가 같은 객체인지 확인 protected void finalize() 객체 소멸시 가비지 컬렉터에 의해 자동 호출 public Class getClass() 객체 자신의 클래스 정보(설계도 객체)를 담고있는 Class 인스턴스 반환 class Class{} : 클래스의 정보를 담기위한 클래스, 설계도 객체, 생성& 정보 얻을 수 있..
- [ 정리/Java ]자바의 정석 97~103강 ch8 예외처리2023-08-09 08:07:12ch 8-1~3 프로그램 오류, 예외 클래스의 계층구조 1. 프로그램 오류 컴파일 에러 : 컴파일할 때 발생하는 에러 런타임 에러 : 실행할 때 발생하는 에러 논리적 에러 : 작성 의도와 다르게 동작 2. 컴파일 에러 컴파일러 역할 : 구문체크, 번역, 최적화 코드를 번역 중 잘못된 코드를 발견하면 알려주는 것 실행자체가 안됨 3. 런타임 에러 실행 시 발생되는 오류로 프로그램 종료 에러 : 코드에 의해서 수습될 수 없는 심각한 오류 ex)OutOfMemoryError 예외 : 코드에 의해서 수습된 수 있는 미약한 오류 4. 예외 처리 예외 발생에 대비한 코드를 작성하는 것 프로그램의 비정상 종료를 막고 실행상태 유지 5. 예외 클래스 Exception 클래스 : 사용자의 실수와 같은 외적인 요인에 의해..
- [ 정리/Java ]자바의 정석 94~96강 내부클래스, 익명 클래스2023-08-07 06:15:36ch 7-42~44 내부클래스 종류, 특징, 선언 1. 내부클래스 내부 클래스에서 객체 생성 없이 외부클래스의 멤버들을 쉽게 접근 가능 코드의 복잡성 줄일 수 있음(캡슐화) 2. 내부 클래스의 종류와 유효범위scope는 변수와 동일 내부 클래스 특징 인스턴스 클래스 외부 클래스 멤버변수 위치에 선언 인스턴스 멤버처럼 다루어짐 외부클래스 인스턴스 멤버들과 관련된 작업에 사용될 목적으로 선언 static 클래스 외부 클래스 멤버변수 위치에 선언 외부 클래스 static멤버처럼 다루어짐 외부클래스 static멤버, 특히 static 메서드에서 사용될 목적으로 선언 지역 클래스 외부 클래스의 메서드나 초기화 블럭안에 선언 선언된 영역 내부에서만 사용 익명 클래스 클래스의 선언과 객체의 생성을 동시에 하는 이름 ..
- [ 정리/Java ]자바의 정석 89~92강 인터페이스, 인터페이스와 다형성, 장점, 디폴트 메서드, static메서드2023-08-07 04:17:02ch 7-35~37 인터페이스의 선언, 상속, 구현 1. 인터페이스 추상 메서드 집합 구현된 것이 전혀없는 설계도로 모든 멤버가 public interface 이름 { // 변수, iv, cv 불가 상수만 가능 public static final 타입 상수이름 = 값; public abstract 메서드이름(매개변수 목록); } // public static final, public abstract 생략 가능 2. 추상클래스와 인터페이스 차이? 추상 클래스 추상 메서드를 가지고 있는 클래스. 인스턴스 변수, 생성자, 인스턴스 메서드가 있음 상속을 통해 하위 클래스에서 구련하도록 강제하는 클래스 상속을 위한 클래스로 객체 생성 불가 단일 상속만 지원 인터페이스 추상 메서드의 집합. 일반 인스턴스 변수, 생..
- [ 정리/Java ]자바의 정석 86~88강 추상 클래스, 추상 메서드2023-08-07 01:24:13ch 7-31~32 추상 클래스, 추상 메서드 1. 추상클래스 미완성 메서드(추상 메서드)를 갖고 있는 클래스 다른 클래스 작성에 도움을 주기 위한 것으로 인스턴스 생성 불가 상속을 통해 추상 메서드를 완성해야 인스턴스 생성 가능 추상 클래스도 생성자 있어야 함 2. 추상메서드 구현부가 없는 미완성 메서드 필요하지만 자손마다 다르게 구현될 것으로 예상되는 경우 자손에서 구현할 때 하나라도 구현하지 않으면 추상클래스로 간주 abstract class Player { // 추상 클래스 abstract void pay(int pos); abstract void stop(); } // 모두 구현 class AudioPlayer extends Player { void play(int pos) { /* 내용 생략 ..
- [ 정리/Java ]자바의 정석 79~강 캡슐화, 다형성, 참조변수 형변환, instanceof 연산자,2023-08-06 00:47:45ch 7-22 캡슐화 1. 캡슐화와 접근 제어자 접근 제어자를 사용하는 이유 - 외부로부터 데이터를 보호하기 위함, 외부에서 직접 접근하는 것을 막고 메서드를 이용 간접 접근을 허용시킴 - 외부에는 불필요한, 내부적으로 사용되는 부분을 감추기 위해서 사용 ch 7-23 다형성 1. 다형성★ 조상 타입 참조 변수로 자손 타입 객체를 다루는 것 Tv t = new SmartTv(); // 타입이 불일치하지만 가능 // 조상 타입 참조변수인 t로 자손 타입 객체 SmartTv를 다룰수 있음 // 반대인 경우 불가능(자손 타입 참조변수로 조상 타입 객체를 다룰수 없음) 조상 타입 참조변수로 자손 객체를 다루면 조상 멤버만 사용가능 ex)Tv 5개 SmartTv 7개면 5개 사용가능 ch 7-24~25 참조변수의..
- [ 정리/Java ]자바의 정석 75~강 패키지, 클래스 패스, import, 제어자, 접근 제어자2023-08-05 20:12:02ch 7-12~14 패키지, 클래스 패스 1. 패키지 서로 관련된 클래스의 묶음 클래스는 *.class 클래스 파일, 패키지는 폴더 클래스는 실제 이름은 패키지를 포함 java.lang.String rt.jar 클래스들을 압축한 파일 2. 패키지 선언 소스파일의 첫 문장으로 한번 선언 같은 소스파일의 클래스들은 모두 같은 패키지에 속함 패키지 선언이 없으면 이름 없는 패키지 default package에 속함 3. 클래스 패스 클래스 파일의 위치를 알려주는 경로 환경변수 classpath로 관리 환경변수에 패키지 루트 등록 필요 ch 7-15~16 import 문, static import 문 1. import 문 컴파일러에게 클래스가 속한 패키지를 알려줌 → 클래스 사용할 때 패키지 이름 생략 가능 j..