My footsteps
- 래퍼클래스 : 기본형을 감싸는 클래스 (8개의 기본형을 객체로 다뤄야할때 사용) - Number클래스 : 모든 숫자 래퍼 클래스의 조상 - long보다 큰 수는 Biginteger , Double보다 큰 수는 BigDecimal - 다양한 변환 방법 - 기본형을 감싸서 래퍼클래스(참조형=객체)로 바꿔주는게 오토박싱(Autoboxing) / 래핑한걸 다시 풀어서 기본형으로 바꾸는게 언박싱(Unboxing)
- String클래스는 내용을 변경할수 없다. - 문자열은 주소비교X 내용비교O - 문자열 리터럴은 프로그램 실행시 자동으로 생성됨 - 문자(char)와 문자열(String)의 초기화 방법 String s = " "; char c = ' '; - String클래스의 생성자와 매서드 - 기본↔문자열 변경할때 : valueOf - 문자열 결합 : String join - StringBuffer클래스 : 내용 변경(추가) 가능 - StringBuffer클래스의 생성자와 매서드 - StringBuilder는 멀티쓰레드다. (=한번에 여러개의 작업을 동시에 할수있다는뜻) - Math클래스 : 수학관련 static매서드의 집합
- 객체의 해시코드(주소?)를 int 형태로 반환하는 매서드 - equals()를 오버라이딩 하면 해시코드도 오버라이딩을 같이 해줘야한다. 이퀄스의 결과가 참이면 두 객체의 주소가 같아야 하기 때문에.. - 객체=iv 집합 이므로 객체를 문자열로 반환한다는것은 iv의값을 문자열로 반환한다는 것과 같음 class Card { String kind; int number; //iv들 Card() { this("SPADE", 1); } Card(String kind, int number) { this.kind = kind; this.number = number; } //오브젝트(Object.최고조상)클래스의 toString값을 오버라이딩 한것 public String toString() { return "kin..
- 연산자 new를 이용해, 발생시키려는 예외 클래스의 객체를 만들고 → 키워드 throw를 이용해 예외를 발생시킴 - checked 예외 : 컴파일러가 예외 처리 여부를 체크(예외 처리 필수!) / unchecked 예외 : 선택적 예외 처리 - finally블럭 : 예외처리와 상관없이 실행되어야할 코드를 넣을 목적으로 만듦 - 예외 되던지기 : 예외 처리하고 다시 예외를 발생시키는것 - 연결된 예외 : 예외 안에 또다른 예외를 넣는것
class A{ //외부 클래스 class B{ //내부클래스 } } - 클래스 중첩 가능하다(=내부클래스) - 객체 생성 없이 A멤버에게 접근 가능 - 내부클래스는 접근제어자 사용 가능 - 내부클래스에 static을 가져야 한다면 외부클래스도 무조건 static을 붙여야함 - 단, 지역내부클래스는 메서드 내에서만 가능!! - 외부 클래스의 private멤버도 내부클래스에서는 사용 가능하며, 지역 내부 클래스를 감싸고 있는 매서드의 상수만 사용가능 - 익명 클래스 : 이름이 없는 일회용 클래스, 정의와 생성을 동시에함. 조상클래스의 이름을 씀 컴파일 에러 : 컴파일시 발생하는 에러 런타임 에러 : 실행시 발생하는 에러 논리적 에러 : 실행은 되지만,의도와 다르게 동작하는것 - error : 심각한 에러 ..