ICT/ν”„λ‘œκ·Έλž˜λ°

μžλ°”ν”„λ‘œκ·Έλž¨ - μžλ°”μ˜ κΈ°μ΄ˆμ§€μ‹

μ•Œ 수 μ—†λŠ” μ‚¬μš©μž 2022. 6. 9. 15:01
λ°˜μ‘ν˜•

μžλ°”ν”„λ‘œκ·Έλž¨ - μžλ°”μ˜ κΈ°μ΄ˆμ§€μ‹

​

μ•ˆλ…•ν•˜μ„Έμš”. μ†Œμ†Œν–‰μž…λ‹ˆλ‹€.

μžλ°”λž€?

μžλ°”(Java)λŠ” C언어에 객체 지ν–₯적 κΈ°λŠ₯을 μΆ”κ°€ν•˜μ—¬ λ§Œλ“  C++κ³Ό 달리, μ²˜μŒλΆ€ν„° 객체 지ν–₯ μ–Έμ–΄λ‘œ 개발된 ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄μž…λ‹ˆλ‹€. μžλ°”λŠ” 가상머신(JVM, Hava Virtual Machine)을 μ‚¬μš©ν•˜μ—¬ μš΄μ˜μ²΄μ œμ™€λŠ” λ…λ¦½μ μœΌλ‘œ λ™μž‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

​

λ”°λΌμ„œ, μžλ°”λŠ” μ–΄λŠ μš΄μ˜μ²΄μ œμ—μ„œλ‚˜ 같은 ν˜•νƒœλ‘œ 싀행될 수 μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ μ΄λŸ¬ν•œ 점이 μˆ˜λ§Žμ€ 개발자둜 ν•˜μ—¬κΈˆ μžλ°”λ₯Ό μ‚¬μš©ν•˜κ²Œ ν•˜λŠ” 원동λ ₯이 되고 μžˆμŠ΅λ‹ˆλ‹€. ν˜„μž¬ μžλ°”λŠ” μ „ μ„Έκ³„μ—μ„œ κ°€μž₯ 많이 μ‚¬μš©ν•˜λŠ” ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€.

μžλ°”μ˜ 역사

μ²˜μŒμ— μžλ°”λŠ” κ°€μ „μ œν’ˆ λ‚΄μ—μ„œ λ™μž‘ν•˜λŠ” μž„λ² λ””λ“œ ν”„λ‘œκ·Έλž¨μ„ μœ„ν•œ μ–Έμ–΄λ‘œ 썬 λ§ˆμ΄ν¬λ‘œμ‹œμŠ€ν…œμ¦ˆ(Sun Microsystems)μ‚¬μ˜ μ œμž„μŠ€ 고슬링(James Gosling) νŒ€μ— μ˜ν•΄ κ°œλ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

​

1991년에 였크(Oak)λΌλŠ” μ΄λ¦„μœΌλ‘œ μ‹œμž‘ν•˜μ—¬ 1996년에 λ°œν‘œλœ 1.0.2버전뢀터 μžλ°”(Java)λΌλŠ” 이름을 μ‚¬μš©ν•˜κ²Œ λ©λ‹ˆλ‹€. 1998년에 λ°œν‘œλœ J2SE 1.2μ—μ„œλŠ” μ›Ήμ—μ„œλ„ μžλ°”λ₯Ό 돌릴 수 있게 ν•΄μ£ΌλŠ” μžλ°” μ• ν”Œλ¦Ώ(Java Applet)이 μΆ”κ°€λ˜λ©°, μžλ°”μ˜ μΈκΈ°λŠ” κΈ‰μƒμŠΉν•˜κ²Œ λ©λ‹ˆλ‹€.

​

κ·Έ ν›„ 버전이 μ—…λ°μ΄νŠΈ 될 λ•Œλ§ˆλ‹€ λ‹€μ–‘ν•œ κΈ°λŠ₯이 μ§€μ›λ˜λ©° μžλ°”λŠ” κΎΈμ€€ν•œ 인기λ₯Ό λˆ„λ¦¬κ²Œ λ©λ‹ˆλ‹€. 이후 2009년에 썬 λ§ˆμ΄ν¬λ‘œμ‹œμŠ€ν…œμ¦ˆμ‚¬κ°€ 였라클과 인수 합병됨에 따라 μžλ°” λ˜ν•œ 였라클둜 μ†Œμœ κΆŒμ΄ λ„˜μ–΄κ°‘λ‹ˆλ‹€.

μžλ°”μ˜ νŠΉμ§•

μžλ°” μ–Έμ–΄κ°€ κ°€μ§€λŠ” μž₯점

​

  1. μžλ°”λŠ” μš΄μ˜μ²΄μ œμ™€λŠ” λ…λ¦½μ μœΌλ‘œ μ‹€ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  2. μžλ°”λŠ” λΆˆν•„μš”ν•œ κΈ°λŠ₯을 과감히 μ œκ±°ν•˜μ—¬ λ‹€λ₯Έ 언어에 λΉ„ν•΄ λ°°μš°κΈ°κ°€ μ‰½μŠ΅λ‹ˆλ‹€.
  3. μžλ°”λŠ” μžλ™ λ©”λͺ¨λ¦¬ 관리 등을 μ§€μ›ν•˜μ—¬ λ‹€λ₯Έ 언어에 λΉ„ν•΄ μ•ˆμ •μ„±μ΄ λ†’μŠ΅λ‹ˆλ‹€.
  4. μžλ°”λŠ” μ—°μ‚°μž μ˜€λ²„λ‘œλ”©μ„ κΈˆμ§€ν•˜κ³  μ œλ„€λ¦­μ„ λ„μž…ν•¨μœΌλ‘œμ¨ μ½”λ“œμ˜ 가독성을 λ†’μ˜€μŠ΅λ‹ˆλ‹€.
  5. μžλ°”μ— κ΄€ν•œ μˆ˜λ§Žμ€ μ°Έκ³  자료λ₯Ό 찾을 수 μžˆμŠ΅λ‹ˆλ‹€.

​

μžλ°” μ–Έμ–΄κ°€ κ°€μ§€λŠ” 단점

​

  1. μžλ°”λŠ” 싀행을 μœ„ν•΄ μžλ°” 가상 머신을 κ±°μ³μ•Όν•˜λ―€λ‘œ λ‹€λ₯Έ 언어에 λΉ„ν•΄ μ‹€ν–‰ 속도가 λŠλ¦½λ‹ˆλ‹€.
  2. μžλ°”λŠ” μ˜ˆμ™Έ μ²˜λ¦¬κ°€ 잘 λ˜μ–΄μžˆμ§€λ§Œ κ°œλ°œμžκ°€ 일일이 처리λ₯Ό μ§€μ •ν•΄μ€˜μ•Ό ν•œλ‹€λŠ” λΆˆνŽΈν•¨μ΄ μžˆμŠ΅λ‹ˆλ‹€.
  3. μžλ°”λŠ” λ‹€λ₯Έ 언어에 λΉ„ν•΄ μž‘μ„±ν•΄μ•Όν•˜λŠ” μ½”λ“œμ˜ 길이가 κΈ΄ νŽΈμž…λ‹ˆλ‹€.

μžλ°”ν”„λ‘œκ·Έλž¨μ˜ μ‹€ν–‰κ³Όμ •

μžλ°” 컴파일러(Java Compiler)

μžλ°” μ»΄νŒŒμΌλŸ¬λŠ” μžλ°”λ₯Ό 가지고 μž‘μ„±ν•œ μžλ°” μ†ŒμŠ€μ½”λ“œλ₯Ό μžλ°” 가상 머신이 이해할 수 μžˆλŠ” μžλ°” λ°”μ΄νŠΈμ½”λ“œλ‘œ λ³€ν™˜ν•©λ‹ˆλ‹€. μžλ°” μ»΄νŒŒμΌλŸ¬λŠ” μžλ°”λ₯Ό μ„€μΉ˜ν•˜λ©΄ javac.exeλΌλŠ” μ‹€ν–‰ 파일 ν˜•νƒœλ‘œ μ„€μΉ˜λ©λ‹ˆλ‹€.

μžλ°” λ°”μ΄νŠΈμ½”λ“œ(Java bytecode)

μžλ°” λ°”μ΄νŠΈμ½”λ“œ(Java bytecode)λž€ μžλ°” 가상 머신이 이해할 수 μžˆλŠ” μ–Έμ–΄λ‘œ λ³€ν™˜λœ μžλ°” μ†ŒμŠ€μ½”λ“œλ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. μžλ°” μ»΄νŒŒμΌλŸ¬μ— μ˜ν•΄ λ³€ν™˜λ˜λŠ” μ½”λ“œμ˜ λͺ…λ Ήμ–΄ 크기가 1λ°”μ΄νŠΈλΌμ„œ μžλ°” λ°”μ΄νŠΈμ½”λ“œλΌκ³  뢈리고 μžˆμŠ΅λ‹ˆλ‹€.

​

μ΄λŸ¬ν•œ μžλ°” λ°”μ΄νŠΈμ½”λ“œμ˜ ν™•μž₯μžλŠ” .classμž…λ‹ˆλ‹€.

​

μžλ°” λ°”μ΄νŠΈμ½”λ“œλŠ” μžλ°” 가상 λ¨Έμ‹ λ§Œ μ„€μΉ˜λ˜μ–΄ 있으면 μ–΄λ–€ μš΄μ˜μ²΄μ œμ—μ„œλΌλ„ 싀행될 수 μžˆμŠ΅λ‹ˆλ‹€.

μžλ°” 가상 λ¨Έμ‹ (JVM)

μžλ°” 가상 λ¨Έμ‹ (JVM, Java Virtual Machine)μ΄λž€ μžλ°” λ°”μ΄νŠΈμ½”λ“œλ₯Ό μ‹€ν–‰μ‹œν‚€κΈ° μœ„ν•œ κ°€μƒμ˜ 기계라고 ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μžλ°”λ‘œ μž‘μ„±λœ λͺ¨λ“  ν”„λ‘œκ·Έλž¨μ€ μžλ°” 가상 λ¨Έμ‹ μ—μ„œλ§Œ 싀행될 수 μžˆμœΌλ―€λ‘œ μžλ°” ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜κΈ° μœ„ν•΄μ„œλŠ” λ°˜λ“œμ‹œ μžλ°” 가상 머신이 μ„€μΉ˜λ˜μ–΄ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.

​

λ”°λΌμ„œ μ˜€λΌν΄μ€ λŒ€λΆ€λΆ„μ˜ μ£Όμš” 운영체제뿐만 μ•„λ‹ˆλΌ μ›Ή λΈŒλΌμš°μ €, 슀마트폰, κ°€μ „κΈ°κΈ° λ“±μ—μ„œλ„ μžλ°” 가상 머신을 μ†μ‰½κ²Œ μ„€μΉ˜ν•  수 μžˆλ„λ‘ μ§€μ›ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

​

κ·Έλž˜μ„œ κ°œλ°œμžλŠ” ν•œ 번만 ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜λ©΄, λͺ¨λ“  μš΄μ˜μ²΄μ œμ—μ„œ 같이 μ‚¬μš©ν•  수 μžˆλŠ” μž₯점이 μžˆμŠ΅λ‹ˆλ‹€. 단, μžλ°”ν”„λ‘œκ·Έλž¨κ³ΌλŠ” 달리 μžλ°” 가상 머신은 μš΄μ˜μ²΄μ œμ— μ’…μ†λ˜λ―€λ‘œ 각 μš΄μ˜μ²΄μ œμ— λ§žλŠ” μžλ°” 가상 머신을 μ„€μΉ˜ν•΄μ•Όν•©λ‹ˆλ‹€.

​

λ˜ν•œ, μžλ°”ν”„λ‘œκ·Έλž¨μ€ μΌλ°˜ν”„λ‘œκ·Έλž¨λ³΄λ‹€ μžλ°” 가상 λ¨Έμ‹ μ΄λΌλŠ” ν•œ 단계λ₯Ό 더 κ±°μ³μ•Όν•˜λ―€λ‘œ μƒλŒ€μ μœΌλ‘œ 싀행속도가 λŠλ¦¬λ‹€λŠ” 단점을 가지고 μžˆμŠ΅λ‹ˆλ‹€.

μžλ°” 가상 λ¨Έμ‹ μ˜ ꡬ성

μžλ°” 가상 머신은 λ‹€μŒκ³Ό 같이 κ΅¬μ„±λ©λ‹ˆλ‹€.

​

  1. μžλ°” 인터프리터(interpreter)
  2. 클래슀 λ‘œλ”(class loader)
  3. JIT 컴파일러(Just-In-Time compiler)
  4. 가비지 컬렉터(garbage collector)

​

μžλ°” μ»΄νŒŒμΌλŸ¬μ— μ˜ν•΄ λ³€ν™˜λœ μžλ°” λ°”μ΄νŠΈμ½”λ“œλ₯Ό 읽고 ν•΄μ„ν•˜λŠ” 역할을 ν•˜λŠ” 것이 μžλ°” μΈν„°ν”„λ¦¬ν„°μž…λ‹ˆλ‹€.

​

μžλ°”λŠ” λ™μ μœΌλ‘œ 클래슀λ₯Ό μ½μ–΄μ˜€λ―€λ‘œ ν”„λ‘œκ·Έλž¨μ΄ μ‹€ν–‰ 쀑인 λŸ°νƒ€μž„μ—μ„œμ•Ό λͺ¨λ“  μ½”λ“œκ°€ μžλ°” 가상 λ¨Έμ‹ κ³Ό μ—°κ²°λ©λ‹ˆλ‹€. μ΄λ ‡κ²Œ λ™μ μœΌλ‘œ 클래슀λ₯Ό λ‘œλ”©ν•΄μ£ΌλŠ” 역할을 ν•˜λŠ” 것이 λ°”λ‘œ ν΄λž˜μŠ€ λ‘œλ”μž…λ‹ˆλ‹€.

​

JIT μ»΄νŒŒμΌλŸ¬λž€ ν”„λ‘œκ·Έλž¨μ΄ μ‹€ν–‰ 쀑인 λŸ°νƒ€μž„μ— μ‹€μ œ κΈ°κ³„μ–΄λ‘œ λ³€ν™˜ν•΄μ£ΌλŠ” 컴파일러λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. 동적 λ²ˆμ—­(dynamic translation)이라고도 λΆˆλ¦¬λŠ” 이 기법은 ν”„λ‘œκ·Έλž¨μ˜ μ‹€ν–‰ 속도λ₯Ό ν–₯μƒμ‹œν‚€κΈ° μœ„ν•΄ κ°œλ°œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 즉, JIT μ»΄νŒŒμΌλŸ¬λŠ” μžλ°” μ»΄νŒŒμΌλŸ¬κ°€ μƒμ„±ν•œ μžλ°” λ°”μ΄νŠΈμ½”λ“œλ₯Ό λŸ°νƒ€μž„μ— λ°”λ‘œ κΈ°κ³„μ–΄λ‘œ λ³€ν™˜ν•˜λŠ” 데 μ‚¬μš©ν•©λ‹ˆλ‹€.

​

μžλ°” 가상 머신은 κ°€λΉ„지 컬렉터λ₯Ό μ΄μš©ν•˜μ—¬ λ”λŠ” μ‚¬μš©ν•˜μ§€μ•ŠλŠ” λ©”λͺ¨λ¦¬λ₯Ό μžλ™μœΌλ‘œ νšŒμˆ˜ν•΄μ€λ‹ˆλ‹€. λ”°λΌμ„œ κ°œλ°œμžκ°€ λ”°λ‘œ λ©”λͺ¨λ¦¬λ₯Ό κ΄€λ¦¬ν•˜μ§€μ•Šμ•„λ„ λ˜λ―€λ‘œ λ”μš± μ†μ‰½κ²Œ ν”„λ‘œκ·Έλž˜λ°μ„ ν•  수 μžˆλ„λ‘ λ„μ™€μ€λ‹ˆλ‹€.

κ°„λ‹¨ν•œ μžλ°”ν”„λ‘œκ·Έλž¨

μžλ°”ν”„λ‘œκ·Έλž¨μ€ ν•œ 개 μ΄μƒμ˜ 클래슀(class)둜 κ΅¬μ„±λ©λ‹ˆλ‹€. μ΄λŸ¬ν•œ ν΄λž˜μŠ€λŠ” ν•œ 개 μ΄μƒμ˜ ν•„λ“œ(field)λ‚˜ λ©”μ†Œλ“œ(method)둜 κ΅¬μ„±λ©λ‹ˆλ‹€.

​

κ°„λ‹¨ν•œ μžλ°”ν”„λ‘œκ·Έλž¨μ˜ κΈ°λ³Έ κ΅¬μ‘°λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

 
class 클래슀 이름 {
	ν•„λ“œμ˜ μ„ μ–Έ
    ν•„λ“œμ˜ μ„ μ–Έ
    ...
    λ©”μ†Œλ“œμ˜ μ„ μ–Έ
    λ©”μ†Œλ“œμ˜ μ„ μ–Έ
    ...
}
class Test {
	int field1;
	String field2;
    
    public void method1() {
    	Systme.out.println("μžλ°” ν”„λ‘œκ·Έλž˜λ°!!");
    }
}
μ‹€ν–‰κ²°κ³Ό
μžλ°” ν”„λ‘œκ·Έλž˜λ°!!

main() λ©”μ†Œλ“œ

μžλ°”ν”„λ‘œκ·Έλž¨μ΄ μ‹€ν–‰λ˜λ©΄ 맨 λ¨Όμ € main() λ©”μ†Œλ“œλ₯Ό μ°Ύμ•„ κ·Έ μ•ˆμ˜ λͺ¨λ“  λͺ…령문을 μ°¨λ‘€λŒ€λ‘œ μ‹€ν–‰ν•©λ‹ˆλ‹€. λ”°λΌμ„œ ν•˜λ‚˜μ˜ μžλ°”ν”„λ‘œκ·Έλž¨μ—λŠ” main() λ©”μ†Œλ“œλ₯Ό κ°€μ§€λŠ” ν΄λž˜μŠ€κ°€ λ°˜λ“œμ‹œ ν•˜λ‚˜λŠ” μ‘΄μž¬ν•΄μ•Όν•©λ‹ˆλ‹€.

​

μžλ°”μ—μ„œ main() λ©”μ†Œλ“œλŠ” λ‹€μŒκ³Ό 같이 μ„ μ–Έν•©λ‹ˆλ‹€.

public static void main(String[] args) {
	...
}

μœ„μ—μ„œμ²˜λŸΌ main() λ©”μ†Œλ“œλŠ” λ°˜λ“œμ‹œ public static void둜 μ„ μ–Έλ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€.

λͺ…λ Ήλ¬Έ(statement)

μžλ°”ν”„λ‘œκ·Έλž¨μ˜ λ™μž‘μ„ λͺ…μ‹œν•˜κ³ , μ΄λŸ¬ν•œ λ™μž‘μ„ 컴퓨터에 μ•Œλ €μ£ΌλŠ” 데 μ‚¬μš©λ˜λŠ” λ¬Έμž₯을 λͺ…령문이라고 ν•©λ‹ˆλ‹€. μžλ°”μ˜ λͺ¨λ“  λͺ…령문은 λ°˜λ“œμ‹œ μ„Έλ―Έμ½œλ‘ (;)으둜 λλ‚˜μ•Ό ν•©λ‹ˆλ‹€.

주석(comment)

μ£Όμ„μ΄λž€ μ½”λ“œμ— λŒ€ν•œ 이해λ₯Ό λ•λŠ” μ„€λͺ…을 μ κ±°λ‚˜ 디버깅을 μœ„ν•΄ μž‘μ„±ν•˜λŠ” μΌμ’…μ˜ λ©”λͺ¨μž…λ‹ˆλ‹€. μžλ°” μ»΄νŒŒμΌλŸ¬λŠ” 주석은 λ¬΄μ‹œν•˜κ³  μ»΄νŒŒμΌν•˜λ―€λ‘œ μ‹€μ œ μ‹€ν–‰κ²°κ³Όμ—λŠ” μ•„λ¬΄λŸ° 영ν–₯을 μ£Όμ§€μ•ŠμŠ΅λ‹ˆλ‹€.

​

μžλ°”μ—μ„œ 주석을 μž‘μ„±ν•˜λŠ” 문법은 λ‹€μŒκ³Ό 같이 두가지 방법이 있으며, κ·Έ μ°¨μ΄λŠ” μ „ν˜€ μ—†μŠ΅λ‹ˆλ‹€.

​

μžλ°”μ˜ ν•œ 쀄 주석은 μ‹œμž‘μœ„μΉ˜μ— //을 μ‚¬μš©ν•˜κ³  μ—¬λŸ¬ 쀄 주석은 /*둜 μ‹œμž‘ν•΄μ„œ λ°˜λ“œμ‹œ */둜 λλ‚˜μ•Όν•©λ‹ˆλ‹€.

1. //ν•œ 쀄 주석
2. /*μ—¬λŸ¬
     쀄
     주석 */

λ‹€μŒ μ˜ˆμ œλŠ” μžλ°”μ—μ„œ μ—¬λŸ¬ 쀄 주석 μ•ˆμ— 또 λ‹€λ₯Έ ν•œ 쀄 주석을 μ€‘μ²©ν•΄μ„œ μ‚½μž…ν•˜λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€.

/* μ—¬λŸ¬ 쀄
	//μ΄λ ‡κ²Œ 두 μ£Ό 주석 μ•ˆμ— 또 λ‹€λ₯Έ ν•œ 쀄 주석을 μ‚½μž…ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μ£Όμ„μž…λ‹ˆλ‹€. */

μœ„μ˜ 예제처럼 μžλ°”μ—μ„œλŠ” μ—¬λŸ¬ 쀄 주석 μ•ˆμ— 또 λ‹€λ₯Έ ν•œ 쀄 주석을 μ‚½μž…ν•  수 μžˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ λ‹€μŒ 예제처럼 μ—¬λŸ¬ 쀄 μ£Όμ„μ•ˆμ— 또 λ‹€λ₯Έ μ—¬λŸ¬ 쀄 주석을 μ€‘μ²©ν•΄μ„œ μ‚½μž…ν•  μˆ˜λŠ” μ—†μŠ΅λ‹ˆλ‹€.

[1] /* μ—¬λŸ¬ 쀄
[2]		/* 또 λ‹€λ₯Έ μ—¬λŸ¬ 쀄 μ£Όμ„μž…λ‹ˆλ‹€. */
[3] μ£Όμ„μž…λ‹ˆλ‹€. */

μœ„μ˜ 예제처럼 μ—¬λŸ¬ 쀄 주석 μ•ˆμ— 또 λ‹€λ₯Έ μ—¬λŸ¬ 쀄 주석을 μ‚½μž…ν•˜λ©΄ [2]번 λΌμΈμ—μ„œ μ‚½μž…ν•œ μ£Όμ„μ˜ μ’…λ£Œ 기호(*/)λ₯Ό [1]번 λΌμΈμ—μ„œ μ‹œμž‘ν•œ 첫 번째 주석이 μžμ‹ μ˜ μ’…λ£Œ 기호(*/)둜 잘λͺ» μΈμ‹ν•˜κ²Œ λ©λ‹ˆλ‹€.

​

λ”°λΌμ„œ μœ„ 예제의 [3]번 라인은 μ£Όμ„μœΌλ‘œ μΈμ‹λ˜μ§€ λͺ»ν•˜κ³ , 컴파일 μ‹œ 였λ₯˜κ°€ λ°œμƒν•˜κ²Œ λ˜λ―€λ‘œ μžλ°”μ—μ„œ μ—¬λŸ¬ 쀄 주석은 μ ˆλŒ€λ‘œ μ€‘μ²©ν•΄μ„œ μ‚¬μš©ν•΄μ„œλŠ” μ•ˆλ©λ‹ˆλ‹€.


였늘 ν¬μŠ€νŒ…μ—μ„œλŠ” μžλ°”ν”„λ‘œκ·Έλž¨μ˜ κΈ°μ΄ˆμ§€μ‹μ— λŒ€ν•œ λ‚΄μš©μ„ λ‹€λ€˜μŠ΅λ‹ˆλ‹€. μžλ°”ν”„λ‘œκ·Έλž¨μ˜ System.out.println()은 λ‹€μŒ ν¬μŠ€νŒ…μ—μ„œ μžμ„Ένžˆ 닀뀄보도둝 ν•˜κ³ , JAVA8의 변경사항 λ˜ν•œ λ‹€λ€„λ³΄κ² μŠ΅λ‹ˆλ‹€.

​

μžλ°”ν”„λ‘œκ·Έλž¨μ„ μ‚¬μš©ν•˜μ—¬ μ „κ³΅λŒ€λΉ„, μ·¨μ—…, 진학 λ“±μ˜ λͺ©μ κ³Ό λ”λΆˆμ–΄ λ‹€μ–‘ν•œ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ‘œ μ „κ³΅λŒ€λΉ„, μ·¨μ—…, 자격증 취득, 진학 λ“±μ˜ λͺ©μ μ„ 가지고 계신 뢄이라면 μ•„λž˜μ˜ 넀이버 폼을 톡해 κ°„λ‹¨ν•˜κ²ŒλΌλ„ λ‚¨κ²¨μ£Όμ‹œλ©΄ μ œκ°€ 직접 λΉ λ₯΄κ³  μ •ν™•ν•œ 닡변을 ν•΄λ“œλ¦¬κ² μŠ΅λ‹ˆλ‹€.

​

κ°μ‚¬ν•©λ‹ˆλ‹€ :)

​

β–Ό μžλ°”ν”„λ‘œκ·Έλž¨μ— λŒ€ν•œ κΆκΈˆν•œ 점 남기기 β–Ό

http://it-kgedu1.kr/support/edu_consult.php

 

IT학원 - KG아이티뱅크 ν™ˆνŽ˜μ΄μ§€

IT학원 KG아이티뱅크 (μ’…λ‘œ, 강남, λ…ΈλŸ‰μ§„, λΆ€μ‚°) 톡합 ν™ˆνŽ˜μ΄μ§€, 학원비 및 μˆ˜κ°•λ£Œ 쑰회. λ°©λ¬Έμƒλ‹΄μ˜ˆμ•½, κ΅μœ‘κ³Όμ •, μƒλ‹΄μ•ˆλ‚΄

it-kgedu1.kr

 

λ°˜μ‘ν˜•