튜터링 8일 차에는 자바에서의 자주 쓰이는 클래스들을 배웠다
▷ Object
▷ Wrapper
▷ String
▷ Math
▷ Calendar
- Object
Object 클래스는 모든 클래스들의 부모 클래스이다.
Object는 모든 클래스에 강제 상속이 된다.
Object 메소드 | |
boolean equals(Object obj) | obj가 가리키는 객체와 현재 객체를 비교하여 참, 거짓 반환 |
Class getClass() | 현 객체의 런타임 클래스를 반환 |
int hashCode() | 현 객체의 해시 코드 반환 |
String toString() | 현 객체의 문자열 표현 반환 , 객체+"문자열" → 객체. toString() + 문자열로 자동 변환 |
void notify() | 현 객체의 대기하는 스레드 1개를 깨운다 |
void notifyAll() | 현 객체의 대기하는 모든 스레드를 깨운다 |
void wait() | 다른 스레드를 깨울 때까지 현재 스레드를 대기시킨다 |
- Wrapper
이름이 Wrapper이지만 실제로 쓰지 않는다.
자바의 기본 타입을 클래스 화한 8개 클래스
기본타입 | Wrapper클래스 |
byte | Byte |
short | short |
int | Integer |
long | Long |
char | Character |
float | Float |
double | Double |
boolean | Boolean |
주요 메서드들은 오른쪽 그림과 같이 다양한 종류가 있다. 현재까지 가장 많이 사용한 메서드는 parseInt , toString을 많이 사용한 것 같다.
- String
자바에서 거의 대부분 문자열을 입력받을 때 사용하는 클래스이다.
String클래스에서 자주 쓰이는 메서드들인데 현재까지 가장 많이 사용한 메서드는 charAt()과 length()인 것 같다.
메서드를 사용할 때 꼼꼼히 읽어보고 사용하면 좋을 것 같다.
당연히 암기!!
- StringBuffer
StringBuffer 같은 경우는 완전 처음 보는 클래스라서 연습하는데 많이 당황했다.
처음에 나는 StringBuffer도 String이니까 문자열과 같은 타입이겠지 했지만 착각이었다. StringBuffer는 StringBuffer타입이다!!
문장을 고칠 때 사용하면 편할 것 같은 클래스이다
- StringTokenizer
StringTokenizer 같은 경우는 백준에서 문자열 파트 문제를 풀 때 자주 사용하게 돼서 익숙한 클래스가 되었다.
StringTokenizer 클래스는 문자열을 읽어 들여 지정된 구분자를 기준으로 분리하는 클래스이다.
그렇게 따로 분리된 것들을 토큰이라고 부른다.
StringTokenizer st = new StringTokenizer("A,B,C,D,E,F,G" , ",");
//이런 경우 [ A B C D E F G ] 이런식으로 분리가 된다.
//내부 요소들을 토큰이라고 부른다.
// A= 토큰 1
// B= 토큰 2
// C= 토큰 3
// D= 토큰 4
// E= 토큰 5
// F= 토큰 6
// G= 토큰 7
StringTokenizer 메서드
위의 예제와 같이 StringTokenzier를 선언해줄 경우 생성자를 호출해야 한다.
첫 번째 매개변수 = 문자열
두 번째 매개변수 = 구분자
전부다 자주 쓰는 메서드들이라 무조건 외워야 한다.
- Math
Math는 이름에서부터 알 수 있듯이 수학적 연산을 도와주는 클래스이다
Math에서 사용되는 메서드들을 많이 알아두면
코드를 구현하는데 많은 도움이 될 것이다.
- Calendar
Calendar클래스는 추상 클래스이다.
Calendar클래스에서 getInstance()라는 메서드가 있다.
이 메서드는 컴퓨터 시스템상의 시간을 불러오는 메서드이다. (주로 현재시간을 불러올 때 사용한다)
이번 튜터링에서 후다닥 진도를 나가서 너무 많은 정보가 머릿속으로 들어온 것 같아 혼란했다.
익숙한 클래스들도 있지만 익숙하지 않는 클래스들도 있어서 연습이 필요하다...!
'JAVA' 카테고리의 다른 글
[JAVA] 튜터링 10일차! (2021-08-04) (0) | 2021.08.06 |
---|---|
[JAVA] 튜터링 9일차!(2021-08-02) (0) | 2021.08.03 |
[JAVA] 공부 7일차! (2021-07-28) (0) | 2021.07.29 |
[JAVA] 공부 6일차! (2021-07-26) (0) | 2021.07.28 |
[JAVA] 공부 5일차! (2021-07-23) (0) | 2021.07.24 |