Java

Java๋ž€?

voider 2020. 9. 6. 18:25

๐Ÿ“š ์ž๋ฐ”์˜ ์ •์„์„ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.

์ž๋ฐ”๋ž€?

์ฌ ๋งˆ์ดํฌ๋กœ ์‹œ์Šคํ…œ์ฆˆSun Microsystems์—์„œ ๊ฐœ๋ฐœํ•˜์—ฌ 1996๋…„ 1์›”์— ๋ฐœํ‘œ๋œ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด

์ด ๋ถ„์ด ์ž๋ฐ”๋ฅผ ๋งŒ๋“  ์ œ์ž„์Šค ๊ณ ์Šฌ๋งJames Arthur Gosling์ด๋‹ค

ํŠน์ง•

  1. JVM(Java Virtual Machine)์„ ์ด์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์šด์˜์ฒด์ œ์— ๋…๋ฆฝ์ 
  2. ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด(์ˆœ์ˆ˜ํ•˜์ง€๋Š” ์•Š์€ ๋“ฏ)
  3. ์ž๋™์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” Garbage Collection

JVM

Java Virtual Machine. ์ž๋ฐ”๋กœ ๋งŒ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ชจ๋‘ JVM ์œ„์—์„œ ์‹คํ–‰๋œ๋‹ค. ๋”ฐ๋ผ์„œ OS๋งŒ ๊ฑฐ์ณ์„œ ์ปดํŒŒ์ผ๋˜๋Š” ์–ธ์–ด์— ๋น„ํ•ด ์•ฝ๊ฐ„ ๋Š๋ฆฌ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค. (byte code๋ฅผ ๋ฐ”๋กœ ๊ธฐ๊ณ„์–ด๋กœ ๋ณ€ํ™˜ํ•ด์ฃผ๋Š” JIT์ปดํŒŒ์ผ๋Ÿฌ ๋„์ž…์œผ๋กœ ์ง€๊ธˆ์€ ๋งŽ์ด ๊ฐœ์„ ๋จ)

๋Œ€์‹ ,

OS์— ์ข…์†์ ์ด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋Š ์šด์˜์ฒด์ œ์—์„œ๋“  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. "Write once, run anywhere"


J

์•Œ์“ธ์‹ ์žก

JDK - ์ž๋ฐ” ๊ฐœ๋ฐœ๋„๊ตฌ(Java Development Kit)

JRE - ์ž๋ฐ”์‹คํ–‰ํ™˜๊ฒฝ(Java Runtime Environment), ์ž๋ฐ”๋กœ ์ž‘์„ฑ๋œ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๊ธฐ ์œ„ํ•œ ์ตœ์†Œ ํ™˜๊ฒฝ

Data type

ํฌ๊ฒŒ ๋‘ ๊ฐˆ๋ž˜๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.

  1. ๊ธฐ๋ณธํ˜•Primitive
  2. ์ฐธ์กฐํ˜•Reference

๊ธฐ๋ณธํ˜• 8๊ฐœ ํƒ€์ž…์„ ์ œ์™ธํ•œ ๋ชจ๋“  ํƒ€์ž…์€ ์ฐธ์กฐํ˜•์ด๋‹ค.

๊ธฐ๋ณธ ํƒ€์ž… Primitive type

์ฐธ์กฐ ํƒ€์ž… Reference type

๊ทธ๋ฆฌ๊ณ  ๋‚˜๋จธ์ง€ ๋ชจ๋“  ํƒ€์ž…์€ ์ฐธ์กฐ ํƒ€์ž…์ด๋‹ค.

class, interface, array, enum type ๋“ฑ ์ˆ˜๋งŽ์€ ์ฐธ์กฐ ํƒ€์ž…์ด ์žˆ๋‹ค.

์ด๋ฏธ ๋งŒ๋“ค์–ด์ ธ ์žˆ๋Š” ์ฐธ์กฐ ํƒ€์ž…์„ ์“ธ ์ˆ˜๋„ ์žˆ๊ณ ,

์ง์ ‘ ๋งŒ๋“ค์–ด์„œ ์‚ฌ์šฉ(์‚ฌ์šฉ์ž ์ •์˜ ํƒ€์ž…)ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

'Java' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๋‹คํ˜•์„ฑPolymorphism  (0) 2020.09.06
์ƒ์†Inheritance  (0) 2020.09.06
์ œ์–ด์žModifier  (0) 2020.09.06
๊ฐ์ฒด์ง€ํ–ฅ2  (0) 2020.09.06
๊ฐ์ฒด์ง€ํ–ฅ1  (0) 2020.09.06