μ€λ λ λΌμ΄νμ¬μ΄ν΄μ μ μ΄ν μ μλ λ©μλObjectμ μ μλμ΄ μμλκΈ°ν λΈλλ΄μμλ§ μ¬μ©ν μ μμλ³΄λ€ ν¨μ¨μ μΈ λκΈ°νλ₯Ό κ°λ₯νκ² ν¨μ λ³μ μΈ ν΅μ§λ λΆκ°λ₯λκΈ°νλ μκ³ μμμ μ½λλ₯Ό μννλ€κ° μμ μ λ μ΄μ μ§νν μν©μ΄ μλλ©΄, wait()μ νΈμΆνμ¬ μ°λ λκ°
Runnableμ λ€μ€ μ€λ λ μμ μ λνλ΄κΈ° μν΄ μ 곡λλ ν΅μ¬ μΈν°νμ΄μ€μ΄λ©° Callableμ Java 1.5μμ μΆκ°λ ν₯μλ Runnable λ²μ μ λλ€.λ μΈν°νμ΄μ€ λͺ¨λ λ©ν°μ€λ λλ‘ μ€νλλ νμ€ν¬λ₯Ό λνλ΄λλ‘ μ€κ³λ¨Runnableλ Threadν΄λμ€ λλ E
λ³μμ μ’ λ₯ : ν΄λμ€ λ³μ, μΈμ€ν΄μ€ λ³μ, μ§μλ³μλ³μμ μ’ λ₯λ₯Ό κ²°μ μ§λ μμ = λ³μμ μ μΈλ μμΉμΈμ€ν΄μ€λ³μ(instance variable)μΈμ€ν΄μ€λ§λ€ κ³ μ ν μνλ₯Ό μ μ§ν΄μΌνλ μμ±μ κ²½μ° μΈμ€ν΄μ€ λ³μλ‘ μ μΈν΄λμ€λ³μ(class variable)λͺ¨λ μΈμ€
ν΄λμ€λ‘λΆν° μΈμ€ν΄μ€λ₯Ό μμ±νλ λ°©λ²Ex)μΈμ€ν΄μ€λ μ°Έμ‘°λ³μλ₯Ό ν΅ν΄μλ§ λ€λ£° μ μμΌλ©°, μ°Έμ‘°λ³μμ νμ μ μΈμ€ν΄μ€μ νμ κ³Ό μΌμΉν΄μΌ νλ€.κ°μ ν΄λμ€λ‘λΆν° μμ±λμμμ§λΌλ κ° μΈμ€ν΄μ€μ μμ±(λ©€λ²λ³μ)μ μλ‘ λ€λ₯Έ κ°μ μ μ§ ν μ μμκ°μ²΄ λ°°μ΄ μμ κ°μ²΄κ° μ μ₯λλ
ν΄λμ€μ μ: κ°μ²΄λ₯Ό μ μν΄λμ κ², κ°μ²΄μ μ€κ³λ λλ ν΄μ©λ: κ°μ²΄λ₯Ό μμ±νλλ° μ¬μ©κ°μ²΄μ μ: ν΄λμ€μ μ μλ λ΄μ©λλ‘ λ©λͺ¨λ¦¬μ μμ±λ κ²ν΄λμ€λ‘λΆν° κ°μ²΄λ₯Ό λ§λλ κ³Όμ = ν΄λμ€μ μΈμ€ν΄μ€ν(instantiate)μ΄λ€ ν΄λμ€λ‘λΆν° λ§λ€μ΄μ§ κ°μ²΄ = ν΄λμ€μ μΈμ€ν΄μ€
μ€μ μΈκ³λ μ¬λ¬Ό(κ°μ²΄)λ‘ μ΄λ£¨μ΄μ Έ μμΌλ©°, λ°μνλ λͺ¨λ μ¬κ±΄λ€μ μ¬λ¬Όκ°μ μνΈμμ©μ£Όμ νΉμ§μ½λμ μ¬μ¬μ©μ±μ΄ λλ€.μ½λμ κ΄λ¦¬κ° μ©μ΄νλ€.μ λ’°μ±μ΄ λμ νλ‘κ·Έλλ°μ κ°λ₯νκ² νλ€.javaμ μ μ chapter6