JDK, Eclipse μ€μΉ
β’
Oracle Java ννμ΄μ§ - Java JDK
Java Platform
SE (Standard Edition)Β
β’
JDKλ§ μ€μΉ
β’
Java Application, JDBC
β’
JVM μμμλ§ μ€νλλ κ΅¬μ‘°λ‘ μλ² μ¬μ΄λκ° λ°λμ νμν μ€ν
β’
Local Machineμμλ§ μ¬μ©ν λ νμ!
EE (Enterprise Edition)Β
β’
JDK μ€μΉ +Β μλ²
β’
Web Program (Servlet, JSP), Spring Framework
β’
JVM μ΄μΈμ μλ²(WAS)μμ λμκ°λ κ΅¬μ‘°λ‘ μΉμλ²λ₯Ό νμλ‘ νλ μ€νν΄λΌμ΄μΈνΈ μ¬μ΄λμ μλ² μ¬μ΄λλ‘ λλλ€
JDK, JRE, JVM
JVMΒ
β’
(Java Virtual Machine, μλ° κ°μ λ¨Έμ )
β’
μλ°λ‘ μ°μ¬μ§ μ ν리μΌμ΄μ
κ³Ό νΉμ OS μ€κ°μ μ‘΄μ¬νμ¬ μλ‘λ₯Ό λΆλ¦¬ν¨μΌλ‘μ¨ Appμ΄ OSμ μν₯μ λ°μ§ μκ³ λμνλ νκ²½μ μ 곡
β’
μλ° μ ν리μΌμ΄μ
μ΄ μ€νλκΈ° μν΄μλ λ°λμ JVMμ΄ νμνλ€.
β’
JVMμ μλ° μμ€μ½λλ‘λΆν° λ§λ€μ΄μ§λ μλ° λ°μ΄λ리 νμΌ(.class)μ μ€νν μ μλ€.
JDKΒ
β’
(Java Development Kit, μλ° κ°λ° λꡬ)
β’
JDKλ JRE + κ°λ°μ μν΄ νμν λꡬ(javac, javaλ±)λ€μ ν¬ν¨νλ€.
JREΒ
β’
(Java Runtime Environment, μλ° μ€ν νκ²½)
β’
미리 λ§λ€μ΄μ§ λΌμ΄λΈλ¬λ¦¬λ₯Ό λ¬Άμ΄λμ νκ²½ (API)
β’
JREλ JVM μ΄ μλ° νλ‘κ·Έλ¨μ λμμν¬ λ νμν λΌμ΄λΈλ¬λ¦¬ νμΌλ€κ³Ό κΈ°ν νμΌλ€μ κ°μ§κ³ μλ€. JREλ JVMμ μ€ννκ²½μ ꡬννλ€κ³ ν μ μλ€.
Java API
β’
νλ‘κ·Έλλ¨Έκ° νμλ‘ νλ κΈ°λ³Έμ μΈ ν΄λμ€λ€μ λΌμ΄λΈλ¬λ¦¬λ‘ 미리 λ§λ€μ΄μ μ 곡
β’
미리 μ 곡λλ ν΄λμ€λ₯Ό νμ€ ν΄λμ€λΌκ³ ν¨
rt.jarΒ Β
β’
.classΒ νμΌλ‘ λ API
β’
C:\Program Files\Java\jdk1.8.0_251\jre\libC:\Program Files\Java\jre1.8.0_251\lib
src.zipΒ
β’
Β .javaΒ νμΌλ‘ λ API
β’
C:\Program Files\Java\jdk1.8.0_251
.classΒ : κΈ°κ³μ΄λ‘ λ μ€ν νμΌ
.javaΒ : μμ μμ€ μ½λ νμΌ
Eclipse, Java νλ‘μ νΈ
β» κ³΅ν΅ λͺ
λͺ
κ·μΉ
β’
λμλ¬Έμ ꡬλΆμ΄ λ¨
β’
μμ½μ΄(μμ€ν
μμ μ΄λ―Έ μ¬μ©νκ³ μλ μ΄λ¦)λ₯Ό μ¬μ©νλ©΄ μλ¨
β’
μ«μλ‘ μμν μ μμ
β’
νΉμλ¬Έμλ '_'(μΈλλ°), '$'λ§ μ¬μ©κ°λ₯
WorkSpace
β’
νλμ νλ‘κ·Έλ¨ λ¨μ
β’
κ·λͺ¨κ° ν°(κΈ°λ₯μ΄ λ§μ) νλ‘κ·Έλ¨μ μ¬λ¬ μ€ννμΌ(νλ‘μ νΈ)λ‘ μ΄λ£¨μ΄μ§ μ μμ
β’
κ°μ₯ μμ ν΄λλ‘ μμ±λ¨
Project
β’
νλμ μ€ννμΌ λ¨μ
β’
νλμ μ€ν νμΌμ μμ±νκΈ° μν λ¨μλΌκ³ ν μ μμ
β’
μν¬μ€νμ΄μ€μ νμ ν΄λλ‘ μμ±λ¨
β» νλ‘μ νΈ λͺ
λͺ
(μ΄λ¦) κ·μΉ
- λμλ¬Έμ κ΅¬λΆ μμ΄ μμ κ°λ₯
- 첫 λ¬Έμλ₯Ό λΉλ‘―ν΄ λͺ¨λ λ¨μ΄λ λλ¬Έμλ‘ μμνλ κ²μ κΆμ₯
Package
β’
ν΄λμ€λ₯Ό κΈ°λ₯λ³λ‘ λ¬Άμ΄λ μΌμ’
μ μΉ΄ν
κ³ λ¦¬
β’
νλμ ν¨ν€μ§λ§ λ§λ€ μλ μκ³ "μμ ν¨ν€μ§.νμν¨ν€μ§" ννλ‘ νΈλ¦¬ ꡬ쑰λ₯Ό λ§λ€ μ μμ
β’
μμ ν¨ν€μ§ ν΄λ μλ νμ ν¨ν€μ§ ν΄λκ° μμ±λ¨
β’
μμ€μ½λλ₯Ό μ μ₯νλ ".java"νμΌμ ν¨ν€μ§λ νλ‘μ νΈ ν΄λ μλ "src"ν΄λμ μ μ₯λ¨
β’
.javaνμΌμ μ»΄νμΌν΄μ μμ±λ ".class"νμΌμ ν¨ν€μ§λ νλ‘μ νΈ ν΄λ μλ "bin"ν΄λμ μ μ₯λ¨
β» ν¨ν€μ§ λͺ
λͺ
(μ΄λ¦) κ·μΉ
- λ¨μ΄ κ°―μ μκ΄μμ΄ μλ¬Έμλ‘ μμ
- λͺ¨λ μλ¬Έμλ‘ μ¬μ©νλ κ²μ κΆμ₯ (κ°λ
μ±μ μν΄μλ μλ°ν΄λ λ¨)
- κ°κΈμ ν λ¨μ΄ μ¬μ©μ κΆμ₯ (μμ ν¨ν€μ§ νλ¨μ΄, νμ ν¨ν€μ§ νλ¨μ΄μ©)
- μ¬λ¬ μ¬λ λλ κΈ°μ
κ³Ό νμ
ν κ²½μ° νμ€ ν¨ν΄μ λ°λ¦ (κ°μΈμ©μΌλ‘ μΈ λλ 무μλ―Έ)
- νμ€ν¨ν΄ : com.νμ¬μ΄λ¦(λλ κ°μΈμ΄λ¦).νλ‘μ νΈλͺ
.μμν¨ν€μ§.νμν¨ν€μ§.ν΄λμ€
Class
β’
λΉμ·ν μ νμ λ©μλ(ν¨μ)μ λ³μλ₯Ό λͺ¨μλμ μμ€μ½λ
β’
μ€μ λ‘ μμ±λ κ°μ₯ νμμ μμ€μ½λ νμΌ
β’
μ΄ν΄λ¦½μ€ μλν°μ μμ±νλ μ½λ©μ νλμ ν΄λμ€λ₯Ό μμ±νλ μμ
μ
β’
ν΄λμ€κ° μν λ§μ§λ§ ν¨ν€μ§μ ν΄λμ μ μ₯λ¨
β’
ν΄λμ€μ νμΌλͺ
μ ν΄λμ€μ μ΄λ¦κ³Ό λμΌν΄μΌ ν¨
β» ν΄λμ€ λͺ
λͺ
(μ΄λ¦) κ·μΉ
β’
λλ¬Έμλ‘ μμ
β’
λͺ
μ¬λ‘ μμ
β’
λ λ²μ§Έ λ¨μ΄λΆν°λ μλ¬Έμλ λμ§λ§ λλ¬Έμλ‘ μμνλ κ²μ κΆμ₯
Method
β’
ν΄λμ€μ μ μ λμ΄ μλ ν¨μ
β’
νλμ ν΄λμ€μμ λ€λ₯Έ ν΄λμ€μ ν¨μλ₯Ό μ€νν λ μ€μ λ‘ μ΄ λ©μλλ₯Ό μ€ννλ κ²
β’
ν¨ν€μ§A.ν¨ν€μ§B.ν΄λμ€C.λ©μλ(arguments)μ ννλ‘ λΆλ¬μμ μ€νν¨
⻠맀μλ λͺ
λͺ
(μ΄λ¦) κ·μΉ
- μλ¬Έμλ‘ μμ
- λμ¬λ‘ μμ
- λ λ²μ§Έ λ¨μ΄λΆν°λ μλ¬Έμλ λμ§λ§ λλ¬Έμλ‘ μμνλ κ²μ κΆμ₯