๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
FOR SW ENGINEER๐Ÿ‘ฉ‍๐Ÿ’ป/JAVA

JAVA_API(java.langํŒจํ‚ค์ง€)

by ์”จ๋‹ˆ 2021. 10. 2.
728x90

JAVA API(Application Programming Interface)

- ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ผ๊ณ  ๋ถ€๋ฅด๋ฉฐ ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ์— ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ํด๋ž˜์Šค ๋ฐ ์ธํ„ฐํŽ˜์ด์Šค ๋ชจ์Œ

 

java.lang ํŒจํ‚ค์ง€

- ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์˜ ๊ธฐ๋ณธ์ ์ธ ํด๋ž˜์Šค๋“ค์„ ๋‹ด๊ณ  ์žˆ๋Š” ํŒจํ‚ค์ง€

- java.langํŒจํ‚ค์ง€์— ์žˆ๋Š” ํด๋ž˜์Šค์™€ ์ธํ„ฐํŽ˜์ด์Šค๋Š” import๊ตฌ๋ฌธ ์—†์ด ์‚ฌ์šฉ๊ฐ€๋Šฅ.

 

java.lang ํŒจํ‚ค์ง€ ์ฃผ์š” ํด๋ž˜์Šค

1. Object : ์ž๋ฐ” ํด๋ž˜์Šค ์ค‘ ์ตœ์ƒ์œ„ ํด๋ž˜์Šค.

2. System : ํ‘œ์ค€ ์ž…๋ ฅ์žฅ์น˜(ํ‚ค๋ณด๋“œ)๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ ์ž…๋ ฅ๋ฐ›๊ฑฐ๋‚˜ ํ‘œ์ค€ ์ถœ๋ ฅ์žฅ์น˜(๋ชจ๋‹ˆํ„ฐ)๋กœ ์ถœ๋ ฅํ•˜๊ธฐ ์œ„ํ•ด์‚ฌ์šฉ.

3. Class : ํด๋ž˜์Šค๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋”ฉํ•  ๋•Œ ์‚ฌ์šฉ.

4. String : ๋ฌธ์ž์—ด ์ €์žฅํ•˜๊ณ  ๋ฌธ์ž์—ด์˜ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ •๋ณด ์–ป์„๋•Œ ์‚ฌ์šฉ.

5. StringBuffer, StringBuilder : ๋ฌธ์ž์—ด ์ €์žฅํ•˜๊ณ  ๋‚ด๋ถ€ ๋ฌธ์ž์—ด์„ ์กฐ์ž‘ํ•  ๋•Œ ์‚ฌ์šฉ.

6. Math : ์ˆ˜ํ•™ ํ•จ์ˆ˜ ์ด์šฉํ•  ๋•Œ ์‚ฌ์šฉ.

7. Wrapper(Byte, Short, Integer, Long, Float, Double, Boolean, Character) : ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์˜ ๊ฐ์ฒด ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉ.

 

 

1. Objectํด๋ž˜์Šค

- ํด๋ž˜์Šค ์„ ์–ธํ•  ๋•Œ extendsํ‚ค์›Œ๋“œ๋กœ ๋‹ค๋ฅธ ํด๋ž˜์Šค๋ฅผ ์ƒ์†ํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฌต์‹œ์ ์œผ๋กœ Objectํด๋ž˜์Šค๋ฅผ ํ•˜๊ฒŒ๋จ.

- ๋ชจ๋“  ์ž๋ฐ” ํด๋ž˜์Šค๋Š” Objectํด๋ž˜์Šค์˜ ์ž์‹์ด๊ฑฐ๋‚˜ ์ž์† ํด๋ž˜์Šค์ž„. (์ตœ์ƒ์œ„ ํด๋ž˜์Šค์ž„)

- ๋ชจ๋“  ํด๋ž˜์Šค๊ฐ€ Object์ƒ์†ํ•˜๊ธฐ ๋•Œ๋ฌธ์— Object์˜ ๋ฉ”์„œ๋“œ ๋ชจ๋“  ํด๋ž˜์Šค์—์„œ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•จ.

 

2. Systemํด๋ž˜์Šค

- Systemํด๋ž˜์Šค ์ด์šฉ์‹œ ์šด์˜์ฒด์ œ์˜ ์ผ๋ถ€๊ธฐ๋Šฅ ์ด์šฉํ•  ์ˆ˜ ์žˆ์Œ. ํ”„๋กœ๊ทธ๋žจ ์ข…๋ฃŒ, ํ‚ค๋ณด๋“œ๋กœ ์ž…๋ ฅ, ๋ชจ๋‹ˆํ„ฐ๋กœ ์ถœ๋ ฅ, ๋ฉ”๋ชจ๋ฆฌ ์ •๋ฆฌ, ํ˜„์žฌ ์‹œ๊ฐ„ ์ฝ๊ธฐ ๋“ฑ์ด ๊ฐ€๋Šฅํ•จ.

- Systemํด๋ž˜์Šค ๋ชจ๋“  ๋ฉค๋ฒ„๋Š” Static์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์–ด ํด๋ž˜์Šค ์ด๋ฆ„์œผ๋กœ ๋ฐ”๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅ.

 

<์ฃผ์š” ๋ฉ”์„œ๋“œ>

1. exit() : ํ˜„์žฌ ์‹คํ–‰ํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค ๊ฐ•์ œ ์ข…๋ฃŒ. ์ •์ƒ ์ข…๋ฃŒ์ผ๊ฒฝ์šฐ ๋งค๊ฐœ ๊ฐ’: 0, ๋น„์ •์ƒ ์ข…๋ฃŒ์ผ ๊ฒฝ์šฐ : 0์™ธ์— ๋‹ค๋ฅธ ๊ฐ’.

2. currentTimeMillis() : ์ปดํ“จํ„ฐ ์‹œ๊ณ„๋กœ๋ถ€ํ„ฐ ํ˜„์žฌ ์‹œ๊ฐ„์ฝ์–ด ms๋‹จ์œ„์™€ ns๋‹จ์œ„์˜ long๊ฐ’ ๋ฆฌํ„ด. (์ฃผ๋กœ ์‹คํ–‰์†Œ์š”์‹œ๊ฐ„ ์ธก์ •)

3. getProperty() : JVM์ด ์‹œ์ž‘ํ•  ๋•Œ ์ž๋™ ์„ค์ •๋˜๋Š” ์‹œ์Šคํ…œ์˜ ์†์„ฑ ๊ฐ’ ๊ตฌํ•จ.

4. gc() : Garbage Collector์‹คํ–‰์‹œํ‚ด

 

3. Stringํด๋ž˜์Šค(๋ฌธ์ž์—ด)

- ์ƒ์„ฑ์ž ์‚ฌ์šฉํ•ด ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค ํ•„์š”์—†์ด ๊ธฐ์ดˆ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉํ•  ๋•Œ์ฒ˜๋Ÿผ ๋ฐ”๋กœ ์ดˆ๊ธฐํ™”ํ•ด์„œ ์‚ฌ์šฉ๊ฐ€๋Šฅ.

 

<์ฃผ์š” ๋ฉ”์„œ๋“œ>

1. charAt() : ํŠน์ • ์ธ๋ฑ์Šค ๊ธ€์ž ๋ฆฌํ„ด

2. indexOf() : ํŠน์ • ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์ธ๋ฑ์Šค ๊ฐ’ ๋ฐ˜ํ™˜. ๋งŒ์•ฝ ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด์ด ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉด -1๋ฆฌํ„ด.

3. length() : ๋ฌธ์ž์—ด ๊ธธ์ด ๋ฆฌํ„ด

4. replace() : ํŠน์ • ๋ฌธ์ž์—ด ๋ณ€๊ฒฝ.

5. substring() : ์ธ๋ฑ์Šค ๊ธฐ์ค€์œผ๋กœ ๊ทธ์•ž์˜ ๋ฌธ์ž์—ด ์ž˜๋ผ์คŒ.

6. toUpperCase() : ๋ฌธ์ž์—ด ๋Œ€๋ฌธ์ž๋กœ ์น˜ํ™˜

7. toLowerCase() : ๋ฌธ์ž์—ด ์†Œ๋ฌธ์ž๋กœ ์น˜ํ™˜

8. trim() : ๋ฌธ์ž์—ด ์•ž, ๋’ค ๊ณต๋ฐฑ ์ œ๊ฑฐ

9. equals() : ๋ฌธ์ž์—ด์˜ ๊ฐ’ ๋น„๊ต

10. valueOf() : ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์˜ ๊ฐ’๋“ค์„ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜

11. split() : ํŠน์ • ๋ฌธ์ž์—ด ๊ธฐ์ค€์œผ๋กœ ์ž˜๋ผ์„œ ๋ฐฐ์—ด์— ๋ฆฌํ„ด

 

4. String๋‹จ์  ๋ณด์™„ํ•œ StringBuilder

<Stringํด๋ž˜์Šค ๋‹จ์ >

- Stringํด๋ž˜์Šค๋Š” ์•„์ฃผ ๋งŽ์ด ์“ฐ์ด๊ณ  ์ข‹์€ ๊ธฐ๋Šฅ๋“ค์„ ๋งŽ์ด ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ณผ์†Œ๋น„ํ•œ๋‹ค๋Š” ๋ฌธ์ œ์ ์ด ์žˆ์Œ.

- String๊ฐ์ฒด๋Š” ์ฒ˜์Œ ์ดˆ๊ธฐํ™”๋œ ๋ฐ์ดํ„ฐ์— ๋ณ€ํ™” ์ƒ๊ธฐ๋ฉด ๊ธฐ์กด ๊ฐ์ฒด ์žฌํ™œ์šฉํ•˜์ง€ ์•Š๊ณ  ์ƒˆ๋กœ์šด ๊ฐ์ฒด ์ƒ์„ฑํ•จ.

 

<StringBuilder>

- Stringํด๋ž˜์Šค ๋‹จ์ ์ธ ์ƒˆ๋กœ์šด ๊ฐ์ฒด ์ƒ์„ฑํ•˜๋Š” ๋ฌธ์ œ๋กœ ์ธํ•ด ์†๋„ ๋Š๋ ค์ง€๋Š” ํ˜„์ƒ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์†๋„์ ์ธ ์ธก๋ฉด์—์„œ ๊ฐœ์„ ๋œ ํด๋ž˜์Šค

 

<StringBuilderํด๋ž˜์Šค ์ฃผ์š” ๋ฉ”์„œ๋“œ>

1. append() : ๊ธฐ์กด ๋ฌธ์ž์—ด์˜ ๋’ค์— ๋ฌธ์ž์—ด ์ถ”๊ฐ€ํ•จ.

2. insert() : ํŠน์ • ์œ„์น˜์— ๋ฌธ์ž์—ด ์ถ”๊ฐ€.

3. delete() : ๋ฌธ์ž์—ด ์‚ญ์ œ.

4. deleteCharAt() : ํŠน์ • ์ธ๋ฑ์Šค ๋ฌธ์žํ•˜๋‚˜ ์‚ญ์ œ.

5. replace() : ๋ฌธ์ž์—ด์˜ ์ผ๋ถ€๋ถ„ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๋กœ ๋Œ€์ฒด.

6. setCharAt() : ๋ฌธ์ž์—ด์—์„œ ์ฃผ์–ด์ง„ index๋ฌธ์ž ๋‹ค๋ฅธ ๋ฌธ์ž๋กœ ๋Œ€์ฒด

7. toString() :  StringBuilder๊ฐ์ฒด ๊ฐ’ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜

8. reverse() : ๋ฌธ์ž์—ด์„ ๊ฑฐ๊พธ๋กœ ๋’ค์ง‘์Œ.

 

5. Mathํด๋ž˜์Šค(์ˆ˜ํ•™๊ด€๋ จ)

- Mathํด๋ž˜์Šค๋Š” ์ˆ˜ํ•™ ๊ณ„์‚ฐ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์„œ๋“œ๋“ค์„ ์ œ๊ณตํ•จ.

- Mathํด๋ž˜์Šค ์ œ๊ณตํ•˜๋Š” ๋ฉ”์„œ๋“œ๋Š” ๋ชจ๋‘ ์ •์  ๋ฉ”์„œ๋“œ์ด๋ฏ€๋กœ Mathํด๋ž˜์Šค ์ด๋ฆ„์œผ๋กœ ๋ฐ”๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

<Mathํด๋ž˜์Šค ์ฃผ์š” ๋ฉ”์„œ๋“œ>

1. abs() : ์ ˆ๋Œ€๊ฐ’์„ ๊ตฌํ•จ

2. ceil() : ์˜ฌ๋ฆผ๊ฐ’์„ ๊ตฌํ•จ

3. floor() : ๋‚ด๋ฆผ๊ฐ’์„ ๊ตฌํ•จ.

4. max() : ์ˆ˜ ๋น„๊ตํ•ด ์ตœ๋Œ€๊ฐ’ ๊ตฌํ•จ.

5. min() : ์ˆ˜ ๋น„๊ตํ•ด ์ตœ์†Œ๊ฐ’์„ ๊ตฌํ•จ.

6. random() : ๋žœ๋˜ ๊ฐ’์„ ๊ตฌํ•จ. (0.0 <= ๊ฐ’ <=1.0)

7. rint() : ํ˜„์žฌ ์ˆ˜์—์„œ ๊ฐ€๊นŒ์šด ์ •์ˆ˜ ์‹ค์ˆ˜ํ˜•ํƒœ๋กœ ๊ตฌํ•จ.

8. round() : ๋ฐ˜์˜ฌ๋ฆผ๊ฐ’ ๊ตฌํ•จ.

 

6. Wrapperํด๋ž˜์Šค

- ์ž๋ฐ”๋Š” ๊ธฐ๋ณธํƒ€์ž…์˜ ๊ฐ’ ๊ฐ–๋Š” ๊ฐ์ฒด ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Œ.

- ๊ธฐ๋ณธํƒ€์ž…์˜ ๊ฐ’์„ ๊ฐ์ฒด ๋‚ด๋ถ€์— ๋‘๊ณ  ํฌ์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํฌ์žฅ(Wrapper)๊ฐ์ฒด๋ผ๊ณ  ํ•จ.

- ํฌ์žฅ ๊ฐ์ฒด ํŠน์ง• : ํฌ์žฅํ•˜๊ณ  ์žˆ๋Š” ๊ธฐ๋ณธ ํƒ€์ž…์˜ ๊ฐ’์€ ์™ธ๋ถ€์—์„œ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€. ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์œผ๋ฉด ์ƒˆ๋กœ์šด ํฌ์žฅ๊ฐ์ฒด ์ƒ์„ฑํ•ด์•ผ ํ•จ.

 

<๋‹ค์–‘ํ•œ Wrapperํด๋ž˜์Šค>

- Byte, Short, Integer, Long, Float, Double, Boolean, Character

 

<Wrapper์˜ ๋‘๊ฐ€์ง€ ์˜๋ฏธ>

- ๊ธฐ๋ณธ ํƒ€์ž… ๊ฐ’ -> ํฌ์žฅ ๊ฐ์ฒด๋กœ ๋งŒ๋“œ๋Š” ๊ณผ์ • : ๋ฐ•์‹ฑ(Boxing)

- ํฌ์žฅ๊ฐ์ฒด -> ๊ธฐ๋ณธํƒ€์ž… ๊ฐ’ : ์–ธ๋ฐ•์‹ฑ(Unboxing).

- ๋ฌธ์ž์—ด์„ ๊ธฐ๋ณธํƒ€์ž… ๊ฐ’์œผ๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ๋„ ๋งŽ์ด ์‚ฌ์šฉํ•จ. ๋Œ€๋ถ€๋ถ„์˜ ํฌ์žฅ ํด๋ž˜์Šค๋Š” "parse๊ธฐ๋ณธํƒ€์ž…"ํ˜•์œผ๋กœ ๋˜์–ด์žˆ๋Š” static๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ณตํ•จ.

728x90