Home Map Index Search News Archives Links About LF
[Top Bar]
[Bottom
Bar]
[Photo of the
Author]
Jose M. Fernández

ÇÊÀÚ¿¡°Ô ¿¬¶ôÇϱâ


Â÷ ·Ê:
µé¾î°¡´Â ±Û
±â¿ø
JAVA¸¦ ¾ò°í ¼³Ä¡Çϱâ
°³¹ßȯ°æ
Ư¡
JAVAÀÇ Ã¹ ¹ø° ÇÁ·Î±×·¥
¿ä¾à

ÀÚ¹Ù·ÎÇÏ´Â ÇÁ·Î±×·¡¹Ö 1ºÎ

[Ilustration]

¿ä¾à: À̱ÛÀº Java ÇÁ·Î±×·¡¹Ö¿¬ÀçÀÇ Ã¹¹ø°ÀÔ´Ï´Ù. ¸ÕÀú ¾ð¾î·Î¼­ÀÇ ÀÚ¹Ù¿Í ±× ÀϹÝÀûÀΠƯ¡ ¹× ÀûÀýÇÑ Á¤º¸¸¦ ¾îµð¿¡¼­ ã¾Æ º¼ ¼ö Àִ°¡¸¦ À̾߱âÇÕ´Ï´Ù.




µé¾î°¡´Â±Û

Java ÇÁ·Î±×·¡¹Ö ¾ð¾î¿Í °³¹ßȯ°æÀ» ¼³¸íÇÒ ¿¬À縦 ½ÃÀÛÇÑ´Ù. ù ¸ñÇ¥·Î¼­ ¾ð¾î, ¸¶ÀÌÅ©·Î¿þÀ̺ê, ¼¼Å¹±âÀÇ ±â·Ï¿¡ ´ëÇÏ¿© Áß¿äÇÏ°Ô ¿©±âÁö ¾ÊÀ» °ÍÀÌ´Ù(´ÙÁß ÃâÆǹ°, Àç¹Õ´Â ¹®ÇÐÀ» Àд °Í Á¶Â÷ Èï¹Ì¸¦ ÀÏÀ¸ÄÑÁø´ÙÇصµ). ¸¶¸²¹Ù ¸®µë¿¡ ¸ÂÃç ¼ÕÀ» Èçµå´Â °Å´ëÇÑ ÄÚ¿Í »ï°¢Çü ¸ð¾çÀÇ ¸öü¸¦ °¡Áø ÀÛÀº ³²ÀÚÀÎ µàÅ©(Java ¸¶½ºÄÚÆ®)¿Í ¿¹Àü ¹Ì±¹ °ø»ó°úÇпµÈ­¸¦ »ý°¢ÇÏ´Â °ÍÀ¸·ÎºÎÅÍ ¿ª½Ã ½Å°æÀ» ¾²Áö ¾ÊÀ» °ÍÀÌ´Ù.

Java Çö»óÀº ¾à°£À» º¯È­°¡ ÀÖ´Ù. ±×°Í¿¡ ´ëÇÑ °¡Ä¡´Â ¸ðµç ÄÄÇ»ÅÍ ¸Å°ÅÁø¿¡ ¾²¿©Áö°í, Java ¾ÖÇø´À» ¹ßÀü½ÃŲ Á¦Ç°À» ÆǸÅÇÏ´Â ¸¹Àº ¼ÒÇÁÆ®¿þ¾î ȸ»ç°¡ ÀÖ°í, ¸î¸î web »çÀÌÆ®°¡ Java ¾ÖÇø´À̳ª ±× ÀÌ»óÀ» °¡Áö°í ÀÖÁö ¾Ê´Ù.

ÀÌ ¿¬À縦 ÅëÇÏ¿©, ±âº»ÀûÀÎ °ÍÀº °£´ÜÇÏÁö¸¸ µ¿½Ã¿¡ ¾ÆÁÖ º¹ÀâÇÏ°í, ²÷ÀÓ¾øÀÌ ¹ßÀüÇÏ°í Àֱ⠶§¹®¿¡ ¾î·Á¿î ÀÌ ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ Æø³Ð°Ô ¹è¿ì±â À§ÇØ °¡´ÉÇÑ ÇÑ ¸¹ÀÌ Á¶»çÇÏ·Á°í ³ë·ÂÇÒ °ÍÀÌ´Ù.

ù¹ø° ¿¬ÀçÀÇ ¸ñÇ¥´Â ÀϹÝÀûÀ¸·Î ¾ð¾îÀÇ ±â¼úÀ» Á¦°øµÈ ÈÄ¿¡ ¾ÖÇø´, network °ü°è ÇÁ·ÎÁ§Æ®, JDBCµî°ú °°Àº ±íÀº ÁÖÁ¦´Â ½ÉµµÀÖ°Ô Á¶»çÇÒ °ÍÀÌ´Ù.

Java°¡ ¹ü¿ë ¾ð¾î¶ó´Â °ÍÀº webÆäÀÌÁö¸¦ À§ÇÑ ¾ÖÇø´À» ¸Å¿ì Àαâ ÀÖ°Ô ¸¸µç´Ù ÇÒÁö¶óµµ ¹èŸÀûÀ¸·Î »ç¿ëµÇÁö ¾Ê´Â´Ù´Â °ÍÀ» °­Á¶ÇÑ °ÍÀÌ´Ù. Java ¾ÖÇø´º¸´Ù ´õ Èï¹Ì¸¦ ²ø¼ö ÀÖ´Â ¸¹Àº ´Ù¸¥ ´ëü ¶§¹®¿¡ ´ÜÁö ÀÚ¹ÙÀÇ °üÁ¡À» °­¿äÇÒ ¼ö°¡ ¾ø´Ù.

ÀÌ Ã¹¹ø° ¿¬Àç´Â ½ÇÁ¦ÀûÀ̶ó±â º¸´Ù´Â ±â¼úÀûÀÌ´Ù. ´ÙÀ½ÀÇ ±Û¿¡¼­ ¾ð¾î¿Í °³¹ßȯ°æÀÇ ±âº»ÀûÀΠƯ¼ºµéÀ» Ž±¸ÇÒ °ÍÀÌ´Ù. ´ÜÁö ÇϳªÀÇ ÀÚ¹ÙÀÇ ÇÁ·Î±×·¡¹Ö ¿¹¸¦ ³¡¿¡¼­ º¼ °ÍÀÌ´Ù.

±â¿ø

Java´Â 1991³â óÀ½ 18°³¿ù µ¿¾È Sun Microsystem Inc.¿¡ ÀÖ´Â James Gosling, Patrick Naughton, Chis Warth, Ed Frank, Mike Sherindan¿¡ ÀÇÇØ Âø»óµÇ¾î Á³´Ù. 1992³â°ú 1995³â »çÀÌ¿¡ Bill Joy, Arthur Van Hoff, Jonathan Payne, Frank Yellia, Tim LindolmÀº Ãʱâ ÇÁ·ÎƮŸÀÔ(prototype)ÀÇ °øµ¿À¸·Î ¿¬±¸ÇÏ¿© ¿Ï¼ºÇÏ¿´´Ù.

>À§ ³¯Â¥µé·ÎºÎÅÍ, Java°¡ WWW¿¡ ÀÌÀüÀ̰ųª Àû¾îµµ µ¿½Ã¿¡ ¸¸µé¾îÁø °ÍÀº ºÐ¸íÇÏ´Ù. -- 1991³âÀÌ µÉ ¶§ ±îÁö Tim Berner Lee´Â HTML¾ð¾î¸¦ °³¹ßÇÏÁö ¾Ê¾Ò´Ù.

JavaÀÇ ±¸¹®ÀÌ C¿Í ¸Å¿ì ºñ½ÁÇÏ°í °´Ã¼ ÁöÇâ Ư¼ºÀ» Áö´Ñ C++ ¿ª½Ã ºñ½ÁÇÏ´Ù. Java´Â ÀÀÁý¼º°ú ³í¸®ÀûÀ¸·Î ÀÏ°üµÇ´Â ÇÁ·Î±×·¡¹Ö ¾ð¾îÀÌ´Ù.

C¿Í C++ÀÌ °¡Áø À¯»ç¼ºµéÀº Java°¡ ÀÎÅͳÝÀ» À§ÇÑ C++ÀÇ ¹öÀüÀÎ ÀλóÀ» ÁÙ ¼öµµ ÀÖÁö¸¸, Áß¿äÇÑ À̷аú ½ÇÁ¦ÀûÀÎ Â÷ÀÌ´Â ÀÖ´Ù. ƯÈ÷, Java´Â C++°ú ºñ±³ÇÑ ÈÄ, °³Ã¼ÁöÇâ ¹ý·ÊÀ» °³¼±ÇÏ°í ¼øÈ­ÇÏ¿´´Ù.

ÀÎÅͳÝÀº ÀϹÝÀûÀ¸·Î ¾Ë·ÁÁø ¾ð¾î·Î ¸¸µé¾î ÀÚ¹Ù¸¦ ½ÃÀÛÇß°í µ¿½Ã¿¡, ÀÚÀ¯·ÎÀÌ »çÀ̹ö½ºÆäÀ̽º¿¡¼­ À̵¿µÉ ¼ö ÀÖ´Â ¿ÀºêÁ§Æ®ÀÇ ¹üÀ§¸¦ ³ÐÈù ÀÌÈÄ·Î ÀÚ¹Ù´Â ÀÎÅͳݿ¡ ±íÀº È¿°ú¸¦ °¡Áö°Ô µÇ¾ú´Ù(µ¿ÀûÀÎ ÀÚµ¿ ½ÇÇà ÇÁ·Î±×·¥).

JAVA¸¦ ¾ò°í ¼³Ä¡Çϱâ

Java ÇÁ·Î±×·¡¹ÖÀ» ÇϱâÀ§ÇØ °áÁ¤ÀûÀÎ µµ±¸°¡ ÀÖ´Ù. ºÎ¼öÀûÀ¸·Î Ç×»ó GNU/LINUX ȯ°æÀ» ÂüÁ¶ÇÑ´Ù.(ÀÒ¾î¹ö¸®°Ô µÈ °æ¿ì¿¡):

ÇöÀçÀÇ ELF¸¦ ±âº»À¸·Î ¿ä±¸ÇÏ´Â Linux Ä¿³Î 1.2.13À̳ª ±× ÀÌÈÄ ¹öÀü ¼³Ä¡ÇÑ´Ù.

JDK(Java Development Kit)ȯ°æ°ú ³Ý½ºÄÉÀÌÇÁ ¹öÀü 2.0.14³ª ±× ÀÌÈÄ ¹öÀü, ÅؽºÆ® ÆíÁýÀ¸·Î ÁÁÀº Xemacs¸¦ ÀÌ¿ëÇÒ °ÍÀÌ´Ù. Ç×»ó Xwindows »ó¿¡¼­ ÀÛ¾÷À» ÇÒ °ÍÀÌ´Ù. ±×°ÍÀº Ç×»ó ÇÊ¿äÇÏÁö ¾ÊÀ»Áö¶óµµ, °³¹ßµÈ ¾ÖÇø´°ú ±×·¡ÇÈÀûÀÎ ÀÎÅÍÆäÀ̽º¿Í °ü·ÃµÈ ÇÁ·Î±×·¥Àº ¾î´À ¶§¶óµµ ¿ä±¸ÇÏ°Ô µÈ´Ù.

´ÙÀ½ÀÇ À¥»çÀÌÆ®·ÎºÎÅÍ JDK¹èÆ÷ÆÇÀ» ³»·Á ¹ÞÀ» ¼ö ÀÖ´Ù:

http://www.blackdown.org/java-linux.html

ÀÌ »çÀÌÆ®·ÎºÎÅÍ ÆÄÀϵéÀ» »¡¸® ³»·Á ¹Þ±â À§Çؼ­´Â Æí¸®ÇÑ ¹Ì·¯¸¦ Â÷·Ê·Î ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. ¸î ´Þ Àü, ÃֽŠ¹öÀüÀº JDK-1.1.3(ÀÌ ±â»ç¸¦ À§ÇØ »ç¿ëµÈ ¹öÀü)À̾úÁö¸¸, ¸¶Áö¸·À¸·Î ¹æ¹®ÇÏ¿´À» ¶§´Â ÀÌ¹Ì °Å±â¿¡¼­ ¹öÀü 1.19¸¦ º¸¾Ò´Ù. ¸ðµç °ÍÀ» ³»·Á ¹Þ´Â´Ù¸é 24MbÀÎ °ÍÀ» ÁÖ¸ñ! ±×·³¿¡µµ ºÒ±¸ÇÏ°í ´ÜÁö ¾ö°ÝÇÏ°Ô ÇÊ¿äÇÑ °ÍÀº ´ë·«12Mb(Àγ»!)¸¦ ³»·Á¹Þ´Â´Ù.

gunzipÇüÅÂÀÇ fileÀº ¾ÐÃàÀ» Ǭ µÚ¿¡ ¹®Á¦¾øÀÌ ½ÃÀÛÇÒ ¼ö ÀÖ´Ù.

º¸Åë µð·ºÅ丮 /usr/local¿¡¼­ ¹èÆ÷ÆÇÀ» ¼³Ä¡Çϸç, ¼­¹öµð·ºÅ丮 /JDK1.1.3¿¡ ´ÙÀ½°ú °°Àº °ÍÀ» »õ·Î ¸¸µé¾îÁø´Ù:

/doc HTML Çü½ÄÀÇ °ø½Ä ¹®¼­

/demo ÀÚ¹Ù ÇÁ·Î±×·¥ µ¥¸ð

/lib ¶óÀ̺귯¸®

/bin ÀÌ µð·ºÅ丮´Â Àû´çÇÑ JDKÀÇ µµ±¸µéÀº ÀÖ´Ù.

/lib µð·ºÅ丮 ¾È¿¡, "classes.zip"(ÀÌ ÆÄÀÏÀº ¾ÐÃàÀ» Ç®Áö ¾Ê´Â´Ù)À̶ó´Â ÆÄÀÏÀ» ÀÖÀ¸¸ç, ±×°ÍÀº JDK¿¡ ÀÇÇØ »ç¿ëµÉ ¼ö ÀÖ´Â ÆíÁýµÈ ¸ðµç Ŭ·¡½ºµéÀ» Æ÷ÇÔÇÕ´Ï´Ù.

·çÆ® µð·ºÅ丮 ¾È¿¡ "src.zip"À̶ó´Â ÆÄÀÏÀÌ ÀÖÀ¸¸ç, ±×°ÍÀº classes.zip¿¡ Æ÷ÇÔµÈ ¼Ò½ºÆÄÀÏ·Î Æ÷ÇÔÇÑ´Ù. ±×µéÀº ÆíÁýµÇÁö ¾Ê°í, ´ÜÁö Á¤º¸ÀûÀÎ ¸ñÀûÀ¸·Î ¹èÆ÷ÆÇÀÌ Á¦°øµÈ´Ù.

°³¹ßȯ°æ

¾Õ¿¡¼­ ¾ð±ÞµÈ °Íó·³ °³¹ß µµ±¸µéÀº /binµð·ºÅ丮¿¡ À§Ä¡ÇÑ´Ù:

javac : Java ¼Ò½ºµéÀ» bytecode·Î º¯Çü½ÃÅ°´Â Java ÄÄÆÄÀÏ·¯.

Java : Java Çؼ® ÇÁ·Î±×·¥. Java bytecode¸¦ ½ÇÇàÇÑ´Ù.

jre : Java¿Í ºñ½ÁÇÑ ´Ù¸¥ Çؼ® ÇÁ·Î±×·¥ÀÌÁö¸¸, »ç¿ëÀÚ¸¦ À§ÇÏ¿© ¸ðµç ¿É¼Ç»ç¿ëÀ» ¿ä±¸ÇÏÁö ¾Ê´Â´Ù.

appletviewer: ¾ÖÇø´À» °Ë»çÇÏ°í ¼öÇàÇÑ´Ù.

jdb: µð¹ö±×.

javap: Java·Î ÄÄÆÄÀÏµÈ bytecode ÆÄÀÏÀÇ µð¾î¼Àºí·¯.

javadoc : ¹®¼­ »ý¼º ÇÁ·Î±×·¥Àº public°ú produceÀÇ Å¬·¡½ºµé, ÀÎÅÍÆäÀ̽º, »ý¼ºÀÚ, ¸Þ¼Òµå¿Í Çʵ带 ¼³¸íÇÏ´Â ÀÏ·ÃÀÇ HTML ÆäÀÌÁö¸¦ »ý»êÇÑ´Ù. ¶ÇÇÑ, Ŭ·¡½ºÀÇ °èÃþ±¸Á¶¿Í ¸ðµç ¸â¹öµéÀ» À妽ºµµ »ý»êÇÑ´Ù.

javah : Java ÇÁ·Î±×·¥ÀÇ °íÀ¯ ¸Þ¼Òµå(C¾ð¾î)¸¦ Ãß°¡ÇÏ´Â Åø.

jar: Àڹ٠Ŭ·¡½ºÀÇ ±â·Ï°ú Jar º¸Á¸ ÆÄÀÏÀ» ¼Ò½º.

javakey : µðÁöÅÐ ±âÈ£¸¦ À¯ÁöÇÏ´Â Åø.

updateAWT : ¾îÇø®ÄÉÀ̼ÇÀÇ AWT1.02 ¸Þ¼ÒÆ®¿¡¼­ º¯È­µÈ À̸§À¸·Î °»½ÅÇÑ´Ù.

ÇöÀçÀÇ µð·ºÅ丮 ±¸Á¶·Î¼­ ÀÌ»ó¾øÀÌ ÀÛ¾÷Çϱâ À§Çؼ­´Â ȯ°æ º¯¼ö PATH¿¡ /usr/local/JDK1.1.3/binÀ» Ãß°¡Çϵµ·Ï Ãæ°íÇÑ´Ù. ´ç½ÅÀÌ »ç¿ë °¡´ÉÇÑ °³¹ß ȯ°æÀ» ½Ã½ºÅÛÀ» Ç×»ó »ç¿ëÇϱ⠿øÇÑ´Ù¸é, /etc/profileÆÄÀÏÀÇ ¾È¿¡ ÀÖ´Â PATHº¯¼ö¸¦ °íÄ£´Ù.

Ư¡

°è¼ÓÇϱâ Àü¿¡ ÀÚ¹®ÇÑ´Ù. ÀÚ¹Ù°¡ ¹«¾ùÀϱî? ´ë´äÇϱâ À§ÇØ, ¿ì¸®´Â JDK ¸Þ´º¾ó¿¡ ÀÖ´Â °Í ó·³, Java´Â ÇÁ·Î±×·¥¹Ö ¾ð¾î¿Í Ç÷§ÆûÀ̶ó´Â µÎ ºÎºÐÀ¸·Î ´ë´äÇÒ¼ö ÀÖ´Ù.

ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î Java´Â ´ÙÀ½ÀÇ Æ¯¼ºÀ¸·Î high level ¾ð¾îÀÔ´Ï´Ù(¸î°¡Áö Á¡¿¡, ¿ì¸®´Â ±×µéÀ» »ó¼¼ÇÏ°Ô °Ë»çÇÑ´Ù):

  • °£´ÜÇÏ´Ù.
  • °´Ã¼ÁöÇâ.
  • ºÐ¹èµÈ´Ù.
  • Çؼ®µÈ´Ù.
  • °ÇÀåÇÏ´Ù.
  • ¾ÈÀüÇÏ´Ù.
  • ½Ã½ºÅÛ ±¸Á¶¿¡ Á߸³ÀÌ´Ù.
  • À̽ÄÀÌ °£ÆíÇÏ´Ù.
  • ¸ÖƼ ¾²·¹µåÀÌ´Ù.
  • µ¿ÀûÀÌ´Ù.
  • °íÇØ»óµµ.

¿ì¸®µéÀÇ ÁÖÀǸ¦ ȯ±â½ÃÅ°´Â ù¹ø° ÀÏÀº ÀÚ¹Ù°¡ Çؼ®µÈ´Ù´Â °ÍÀÌ´Ù. ÀÌ¹Ì ÇÏÀ§ ´Ü°è ÄÚµåÀÎ Java¼Ò½º¿¡µµ ºÒ±¸ÇÏ°í, ±×°ÍÀº ´Ù¾çÇÑ Ç÷§Æû¿¡¼­ Çؼ®µÇ±â ÀÌÀü¿¡ bytecodeÀÇ ¿ÀºêÁ§Æ®¸¦ »ý¼º½ÃÅ°±â À§ÇØ ÄÄÆÄÀÏÀ» ¿ä±¸ÇÑ´Ù.

Java bytecodeÀÇ ´öÅÿ¡ "Çѹø ¾²°í, Ç×»ó ½ÇÇà"À» ÇÒ¼ö ÀÖ´Ù. Ç÷§Æû»ó¿¡¼­ Java ÇÁ·Î±×·¥À» ÄÄÆÄÀÏÇÏ°í Java °¡»ó ±â°è(JVM)ÀÇ ¿ÏÀüÇÏ°Ô ¼³Ä¡ÇÑ ´Ù¸¥ ¾ÆÅ°ÅØó¿¡¼­ ±×µéÀ» ½ÇÇàÇÒ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, Java ÇÁ·Î±×·¥Àº Windows NT Ç÷§Æû¿¡¼­ ÄÄÆÄÀÏÇÏ°í Sun Ultra Solaris¿¡¼­ ¹®Á¦(Àû¾îµµ ÀÌ·ÐÀÌ´Ù.)¾øÀÌ ½ÇÇàµÈ´Ù.

ÀϹÝÀûÀ¸·Î, Ç÷§ÆûÀº ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ´Â Çϵå¿þ¾î/¼ÒÇÁÆ®¿þ¾î ȯ°æÀÌ´Ù. ±×·¯³ª, Ç÷§ÆûÀº ´ÜÁö Java¸¦ ½ÇÇàÇÏ´Â ¼ÒÇÁÆ®¿þ¾î ȯ°æÀÌÁö¸¸, °¢°¢ÀÇ Java Ç÷§ÆûÀº Çϵå¿þ¾î Ç÷§Æû¿¡¼­ ½ÇÇàÇÒ ¶§ °¡Áø´Ù.

Java Ç÷§ÆûÀº µÎ ÄÄÆ÷³ÍÆ®¸¦ °¡Áö°í ÀÖ´Ù:

  • Java °¡»ó ±â°è(Java Virtual Machine; JVM)
  • Application Programming Interface(API)

JVMÀº Java ÇÁ¸®ÄÄÆÄÀÏ ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÉ ¼ö ÀÖ´Â Ãß»óÀûÀÎ ÄÄÇ»ÅÍÀÌ´Ù. °³³äÀº °¡´ÉÇÑ ¸ðµç Àå¼Ò¿¡ ±×°ÍÀ» ¼³Ä¡ÇÏ´Â °Í¶§¹®¿¡ °£´ÜÇÏ°í ÀÛ°Ô ¼³°èµÇ¾ú´Ù. ÀÌ ´Ü¼øÀº ¸ðµç ÇöÁ¸ÇÑ Ç÷§Æû¿¡ È®»êÀÌ °¡´ÉÇÏ°Ô ¸¸µé°í, ¸ðµç °Í¿¡ ´ëÇÑ °øÅëÀÇ ¼ÒÇÁÆ®¿þ¾îÃþ°ú ¸Å¿ì »óÀÌÇÑ À̱âÁ¾°£ ³×Æ®¿öÅ©(ÀÎÆ®³Ý°ú °°Àº °Í)À» Á¦°øÇÏ¿© °¡Àå Å« À̽´ÀÎ À̽ÄÀÇ ¿ëÀ̼ºÀ¸·Î ÇØ°áµÈ´Ù. ±×°ÍÀ¸·Î ÀÌ ±â¼úÀÇ ³¡¾ø´Â ¼ºÀå¿¡ ´ëÇÑ È®½ÇÇÑ ÀÌÀ¯·Î »ý°¢ÇÒ ¼ö ÀÖ´Ù. ±×·³¿¡µµ ºÒ±¸ÇÏ°í °¡»ó ¸Ó½Å´Â À̸§À» ³ªÅ¸³»Áö¸¸, ´ÜÁö ¼ÒÇÁÆ®¿þ¾î ÃþÀ¸·Î º¸ÀÌÁö ¾Ê°í, ¸®¾ó Java ¸Ó½Å, ½Å¿ëÄ«µå, TVÇص¶±âµîÀ» Áö¿øÇÑ Java Ĩ ½ÃÀåÀÌ Á¶±Ý¾¿ º¸À̱⠽ÃÀÛÇÏ´Â ÇϳªÀÇ ÄÄÇ»ÅÍ ½Ã½ºÅÛÀÌ·Á°í ³ë·ÂÇÑ´Ù.

Java API´Â ±×·¡ÇÈ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º(Graphical User Interface; GUI)¿Í °°Àº ¸¹Àº À¯Æ¿¸®Æ¼¸¦ Á¦°øÇÑ ¼ÒÇÁÆ®¿þ¾î ÄÄÆ÷³ÍÆ®ÀÇ ¸¹Àº ¸ðÀ½ÀÌ´Ù. ±× ¶óÀ̺귯¸®(JavaÀÇ Àü¹® ¿ë¾î¸¦ ÀÌ¿ëÇÑ ÀÚ¹Ù ÆÐÅ°Áö)¿¡¼­ ºÒ·¯¸ð¾Æ Áø´Ù. ÀÌ ÆÐÅ°ÁöÀÇ ´öÅÿ¡ Àß ¾Ë·ÁÁø À¥ ¾ÖÇø´µé ¿ÜÀÇ ¸¹Àº ¾îÇø®ÄÉÀ̼ÇÀ» À§ÇØ Java¸¦ »ç¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇÏ°í, ¿¹¸¦ µé¸é proxie, ¸ÞÀÏ ¼­¹ö, IRC ¼­¹ö ±×¸®°í ½ÇÁúÀûÀ¸·Î ÀÎÅͳݿ¡ °ü°èµÈ´Ù´Â »ó»óÀ¸·Î À¥ ¼­¹ö¸¦ ¼³°è ÇÒ ¼ö ÀÖ´Ù.

´Ù¾çÇÑ ±×·ìÀ¸·Î API ÆÐÅ°ÁöµéÀ» ºÐ·ùÇÒ ¼ö ÀÖ´Ù:

  • Basic: objects, matrixes, numbers, input/output, data structures(µ¥ÀÌŸ ±¸Á¶), properties of the system(½Ã½ºÅÛÀÇ Æ¯¼º), date, time µî.
  • Applets : Java ¾ÖÇø´ ±â¼úÀÇ ÀÌ¿ëÇÑ functionµé°ú À¯Æ¿¸®Æ¼µéÀ» ¼¼Æ®.
  • Network work: URLs, TCP, UDP, ¼ÒÄÏ, IP ¾îµå·¹½Ì.
  • Internationalization: Áö¿ªÀûÀÎ ¸í¼¼¿¡ ½±°Ô ÀûÀÀÇÏ°í °íÀ¯ ¾ð¾î¿¡¼­ ÀÐÇôÁú ¼ö ÀÖ´Â ÄÚµå·Î ¾²¿©Áø µµ¿ò.
  • Security: low/high ·¹º§, µðÁöÅÐ ±âÈ£ Æ÷ÇÔ, public/private Å°, ¿¢¼¼½º ÄÁÆ®·Ñ°ú ÀÚ°Ý.
  • Software Components: JavaBeans·Î ¾Ë·ÁÁ® ÀÖ´Ù.
  • Databases: ¸¹Àº °ü°è µ¥ÀÌŸº£À̽º¿¡ ÀÏ°ü¼ºÀÌ ÀÖ´Â Á¢±ÙÀ» Á¦°øÇÑ´Ù.

ÀÌ ±âº»ÀûÀÎ API Ä¿³Î ¿Ü¿¡, ¶ÇÇÑ 3D È®Àå, À̵¿Çϱ⠽¬¿î Åë½Å, ¿¡´Ï¸ÞÀÌ¼Ç µîÀÌ ÀÖ´Ù.

Java´Â »ó¼¼ÇÏ°Ô °øºÎÇÒ Æ¯¼ºÀÇ ½Ã¸®Á °¡Áö°í ÀÖ´Ù°í, ´Ü¿ø óÀ½¿¡ ¾ð±ÞÇß´Ù:

°£´ÜÇÏ´Ù:

Java¿¡¼­´Â ÀÛ¾÷À» µû¶ó Àâ±âÀ§ÇØ Ç×»ó Àß Á¤ÀÇµÈ ¾à½ÄÀÌ °¨¼ÒµÈ´Ù. ±×°ÍÀº °­·ÂÇÑ ¾ð¾îÀÇ ¸ðµç ±â´É¼ºÀ» Á¦°øµÇ¾úÁö¸¸, ÀÛ°Ô »ç¿ëÇÏ°í È¥¶õ½ÃÅ°´Â ±â´ÉÀº ±×µé°ú Á¾Á¾ ±³Ã¼µÇ¾ú´Ù. Java´Â C/C++¿Í ¸¹Àº C++ÀÇ °´Ã¼ ÁöÇâ ±â´ÉÀÇ ±¸¹®À» »ó¼Ó ¹Þ´Â´Ù. C/C++¸¦ Àß ¾Æ´Â ÇÁ·Î±×·¡¸Ó ´©±¸¶óµµ Java¸¦ ¹è¿ì´Âµ¥ ¹®Á¦°¡ ¾øÀ» °ÍÀÌ´Ù. ±×µéÀÇ À¯»ç¼º¿¡µµ ºÒ±¸ÇÏ°í, Java´Â C/C++ÀÇ ¸¹Àº ±â´ÉÀ» Á¦°ÅµÇ¾ú´Ù:

  • Æ÷ÀÎÆ® »ê¼ú
  • ·¹Áö½ºÅÍ (struct)
  • ŸÀÔ Á¤ÀÇ (typedef)
  • ¸ÅÅ©·Î (#define)
  • ÀÚÀ¯ ¸Þ¸ð¸® ÇÊ¿ä(free)
  • ´ÙÁß °èÃþ.
  • operatorÀÇ overload.
  • unions¾ÈÀÇ structure.
°´Ã¼ÁöÇâÀÌ´Ù: Java´Â °á°úÀûÀ¸·Î °´Ã¼ÁöÇâÀÇ Á¢±Ù¿¡ ±ú²ýÇÏ°í À¯¿ëÇÏ°Ô ½ÇÁ¦ÀûÀÎ Ãâ¹ßÁ¡ºÎÅÍ ¼³°èµÇ¾ú´Ù. JavaÀÇ ¿ÀºêÁ§Æ® ¸ðµ¨Àº »ç¿ëÇϱ⿡ °£´ÜÇÏ°í ½±´Ù.
ºÐ¹èµÈ´Ù: Java´Â TCP/IP¿¬°áÀ» ¸¹Àº ºñÁßÀ» µÎ¾î ¼³°èµÇ¾ú´Ù. »ç½Ç, ±×°ÍÀº ³×Æ®¿¡ ´ëÇÑ Á¤º¸¸¦ Áö¿ªÀûÀÎ ÆÄÀϸ¸Å­ ½±°Ô ÀÔ¼öÇϱâÀ§ÇÑ °³¹ßÀÚ¸¦ Çã¶ôÇÑ´Ù.
°ÇÀåÇÏ´Ù: Java´Â ÄÄÆÄÀÏŸÀÓÁß¿¡ ŸÀÔ °Ë»ç¸¦ Çã¶ôÇÏ´Â °­·ÂÇÑ Å¸ÀÔ¾ð¾îÀÌ´Ù. ±×°ÍÀº ¶ÇÇÑ ·±Å¸ÀÓ µ¿¾È¿¡ ¸î°¡Áö¸¦ °Ë»çÇÑ´Ù. ¸Þ¸ð¸®´Â Çؼ®ÇÁ·Î±×·¥ÀÌ ´õ ÀÌ»ó »ç¿ëÇÏÁö ¾Ê´Â ¿ÀºêÁ§Æ®¸¦ ÀÚµ¿ÀûÀÎ ¾²·¹±â ¼öÁý±â(garbage collector)°¡ ±¸ÇöµÇ¾î ÀÚµ¿ÀûÀ¸·Î °ü¸®µÈ´Ù. Java ÀÚü¿¡ ¸¹Àº °´Ã¼ ÁöÇâ ¿¹¿Ü 󸮱⸦ Á¦°øÇÑ´Ù. ¿Ã¹Ù¸£°Ô ¾²¿©Áø ¾îÇø®ÄÉÀ̼ǿ¡¼­ ¸ðµç ·±Å¸ÀÓ ¿¡·¯°¡ ÇÁ·Î±×·¥¿¡ ÀÇÇØ ´Ù·ç¾î Áú¼ö ÀÖ´Ù.
µ¶¸³Àû ¾ÆÅ°ÅØóÀÌ´Ù: JavaÀÇ °³¹ßÀÚµéÀÇ ÁÖµÈ ¸ñÇ¥´Â "Çѹø¾²°í, ¾î¶°ÇÑ ¼ø°£À̳ª ¾î´À°÷ÀÌ´ø Ç×»ó ½ÇÇàµÈ´Ù"ÀÌ´Ù. Java ÄÚµå´Â ±â°è µ¶¸³ÀûÀÎ high level ¹ÙÀÌÆ® ÄÚµå·Î Çѹø ÄÄÆÄÀϵȴÙ. ÀÌ ¹ÙÀÌÆ® ÄÚµå´Â ±â°è µ¶¸³ÀûÀÎ ·±Å¸ÀÓ ½Ã½ºÅÛ(Çؼ® ÇÁ·Î±×·¥)À» °¡Áö°í ½ÇÇàµÇµµ·Ï ¼³°èµÇ¾ú´Ù.
¾ÈÀüÇÏ´Ù:

ºÐ¹èµÈ ÇÊ¿äÇÑ Á¤º¸´Â Ŭ¶óÀ̾ðÆ® ¿î¿µÃ¼Á¦¿¡¼­ º¸¾ÈÀÇ °¡Àå Å©°Ô ¿ä±¸ÇÑ´Ù. Java´Â ¿©·¯ ±â´ÉÀÇ ´öÅÿ¡ ±×°ÍÀ» ·±Å¸ÀÓ È¯°æ¿¡¼­ º¸¾ÈÀ» Á¦°øÇÑ´Ù:

  • bytecode ÀÔÁõÀÚ
  • ½ÇÇà½Ã°£ µ¿¾ÈÀÇ ¸Þ¸ð¸®ÀÇ °¡¿ë¼º
  • ÆÄÀÏ Á¢±Ù Á¦ÇÑ»çÇ×

ÄÄÆÄÀÏ·¯´Â ´ÜÁö ¿Ã¹Ù¸¥ Äڵ带 »ý¼º½ÃųÁö¶óµµ, Çؼ® ÇÁ·Î±×·¥Àº ÄÄÆÄÀÏ ÀÌÈÄ¿¡ Äڵ尡 ¼öÁ¤(°íÀÇÀûÀδø, ¾Æ´Ï´ø)µÇÁö ¾Ê´Ù´Â º¸ÁõÀ» ÀÌÁßÀ¸·Î °Ë»çÇÑ´Ù. ¶ÇÇÑ Java Çؼ® ÇÁ·Î±×·¥Àº Ŭ·¡½º¿¡ ´ëÇÑ ¸Þ¸ð¸® °¡¿ë¼ºÀ» °áÁ¤ÇÑ´Ù. Java´Â ¾î¶°ÇÑ ½Ã½ºÅÛ¿¡¼­µµ ¾ÈÀüÇÑ ¸ðµç ¾îÇø®ÄÉÀ̼ǵé Áß Çϳª·Î ¿©°ÜÁú¼ö ÀÖ´Ù.

À̽ÄÀÌ °£ÆíÇÏ´Ù: ±âº»ÀûÀÎ JavaÀÇ À̽ĿëÀ̼º ÀÌ¿Ü¿¡, Á¤¸»·Î µ¶¸³Àû ¾ÆÅ°ÅØóÀ̱â À§Çؼ­, Java´Â À̽ĿëÀ̼ºÀ» Ç¥ÁØÀ¸·Î ±¸ÇöÇÑ´Ù: Á¤¼ö´Â Ç×»ó Á¤¼öÀÌ°í, GUI´Â Ãß»óÀûÀÎ À©µµ¿ìÁîÀÇ ½Ã½ºÅÛÀ¸·Î ±¸¼ºµÊÀ¸·Î ¾ÆÅ°ÅØó(UNIX, PC, Mac)·ÎºÎÅÍ µ¶¸³ÀûÀÌ´Ù.
Çؼ®µÈ´Ù: JavaÀÇ ±âº»ÀûÀÎ ¸ñÇ¥µéÁß¿¡ ÇϳªÀÎ µ¶¸³ÀûÀÎ Ç÷§ÆûÀ» ´Þ¼ºÇϱâÀ§ÇØ Java ÄÄÆÄÀÏ·¯´Â Áß°£ ÄÚµå(¹ÙÀÌÆ®ÄÚµå)¸¦ »ý¼º½ÃŲ´Ù. ±×°ÍÀº ¾î¶² ½Ã½ºÅÛ »ó¿¡¼­¶óµµ Àû´çÇÑ Çؼ® ÇÁ·Î±×·¥À¸·Î ½ÇÇàµÉ ¼ö ÀÖ´Ù. ÀÌ ¿¹°¡ Java ¾îÇø®ÄÉÀ̼ÇÀÇ °¡´ÉÇÑ ¼º´É ¹®Á¦Á¡µé¿¡ ÀǾÆÇÏ°Ô ¿©±æ°ÍÀÌ´Ù. ±×·³¿¡µµ ºÒ±¸ÇÏ°í, ÀÌ ¼º´É °ü°è ¶§¹®¿¡ Java ÀÛ¼ºÀÚ´Â °¡Àå ³ôÀº ¼º´ÉÀ» °¡´ÉÇÏ°Ô À¯ÁöÇϱâ À§Çؼ­ ±â°èÄÚµåÀÇ ¹ø¿ªÇϱⰡ °£´ÜÇÏ°í, ½¬¿î °ÍÀ¸·Î ¹ÙÀÌÆ® ÄÚµå µðÀÚÀÎÀ» À¯ÁöÇÏ·Á°í ³ë·ÂÇß´Ù.
¸ÖƼ ¾²·¹µåÀÌ´Ù: °ÇÀåÇÑ ¹æ½ÄÀ¸·Î µ¿½Ã¿¡ ¿©·¯ ÀÛ¾÷À» ½ÇÇàÇÒ ¼ö ÀÖ´Â Java ¾îÇø®ÄÉÀ̼ÇÀ» ÀÛ¼ºÇÏ´Â °ÍÀº °£´ÜÇÏ´Ù.
µ¿ÀûÀÌ´Ù: Java´Â ·±Å¸ÀÓ±îÁö ¾îÇø®ÄÉÀ̼ÇÀ» Çü¼ºÇÏ´Â ¸ðµç ¸ðµâµéÀ» ¿¬°áÇÏ·Á°í ³ë·ÂÇÏ´Â °ÍÀº ¾Æ´Ï´Ù. ÀÌ ±â´ÉÀº Äڵ带 µ¿ÀûÀ¸·Î ¾ÈÀüÇÏ°í Æí¸®ÇÏ°Ô ¿¬°áÇÏ´Â °ÍÀ» µ½´Â´Ù.

ÀÌ°Í ÈÄ¿¡ GNU/Linux ¼¼°è¿¡ ÀÖ´Â JavaÀÇ »óÅÂ(Á÷¹«»ó Java ¹®¼­¸¦ ¸¹ÀÌ ¹ß°ßÇÒ ¼ö ÀÖ´Ù)¿¡ ´ëÇØ "¾ð±Þ"ÇÏ´Â °ÍÀ» ÀǾÆÇÏ°Ô ¿©±æ ¼ö ÀÖ´Ù. Linux¸¦ À§ÇÑ JDKÀÇ °¡¿ë¼ºÀ» ÀÏÂï ¾ð±ÞÇß°í, ½ã ¸¶ÀÌÅ©·Î½Ã½ºÅÛ½º»ç¿¡¼­ °³¹ßµÈ »ó¾÷»óÀÇ ¼³Ä¡°¡ ¾Æ´Ï´Ù.(ÀÚÀ¯·ÎÀÌ ºÐ¹èÇÒ ¼ö ÀÖ´ÙÇÏ´õ¶óµµ).

¹®Á¦Á¡ ¾øÀÌ ¾î¶°ÇÑ Java ¼Ò½º¶óµµ ÄÄÆÄÀÏÇÒ ¼ö ÀÖ´Â, GPL¶óÀ̼¾½º ¾Æ·¡¿¡ ÄÄÆÄÀÏ·¯ GUAVAC¿Í °°Àº Åø(tool)ÀÌ ÀÖ´Ù. Berkeley¶óÀ̼¾½º ¾Æ·¡¿¡ KAFFE¶ó°í ºÒ¸®´Â °¡»ó±â°èµµ ¿ª½Ã ¾ð±ÞÇÑ´Ù. ÃÖÈÄÀÇ µÎ ÇÁ·ÎÁ§Æ®µéÀº ¿©ÀüÈ÷ ¿ÏÀüÇÑ °³¹ß ½Ã½ºÅÛÀ» °¡Áö°í ÀÖ´Â ½ã»ç(¼ø°£ÀûÀÎ ¹«·á ¹èÆ÷)·ÎºÎÅÍ Java Ŭ·¡½º ¶óÀ̺귯¸®°¡ ÇÊ¿äÇÏ°Ô µÉÁö¶óµµ ¸Å¿ì Áøº¸ÇÑ ´Ü°è¿¡ ÀÖ´Ù.

¿©ÀüÈ÷ Ãʱâ´Ü°èÀÎ ÃÖ±ÙÀÇ ¿©·¯ ÇÁ·ÎÁ§Æ®´Â ºü¸£°í ºñÁÖ¾óÀûÀÎ ¾îÇÁ¸®ÄÉÀÌ¼Ç °³¹ß ȯ°æÀ» Á¦°øÇϴ°ÍÀ» °Ü³ÉÇÑ´Ù.

¸¶Áö¸·À¸·Î, ³ª´Â ÀÚ¹Ù¿Í GNU ±â¼úÀ» °ü°èÇÏ´Â ³×Æ®¿¡ Å« À̵¿ÀÌ ÀÖ´Ù´Â °Í°ú, ½ã»ç·ÎºÎÅÍÀÇ µ¶¸³°ú ƯÈ÷ JavaÀÇ ¹«·á¹èÆ÷ÀÇ ¿ÏÀüÇÑ µµ±¸ ¹Ú½ºÀÇ °³¹ßÀ» °ü°èÇÏ´Â °ÍÀ» ±â¼úÇÏ°Ú´Ù.

JAVAÀÇ Ã¹ ¹ø° ÇÁ·Î±×·¥

ÀϹÝÀûÀÎ ¾ð¾îÀÇ Æ¯¼ºµéÀ» ¸î°¡Áö º» ÈÄ¿¡ ½ÇÁ¦ÀÇ ÇÁ·Î±×·¥À» º¾½Ã´Ù. µé¾î°¡´Â ¸»¿¡¼­ ¾ð±ÞÇϱ⠶§¹®¿¡, ÀüÇöÀûÀÎ Àç·á¸¦ Áß¿äÇÏ°Ô ¿©±âÁö ¾Ê±â À§ÇØ hello world ¿¹Á¦¸¦ ÁÁ¾ÆÇÏ°í, ¿ì¸®°¡ ÁÁ¾ÆÇÏ´Â ¾î¶°ÇÑ Â÷¿øÀÇ Á¦°öÀ» ±×¸° ÇÁ·Î±×·¥ÀÇ ½ÃÀÛÇÏ´Â °ÍÀ» °¡´ÉÇÑ ÇÑ ´õ ÁÁ¾Æ ÇÒ °ÍÀÌ´Ù(³Ê¹« ¸¹Áö ¾ÊÀº º¹ÀâÇÑ ºñÆ®):

File Cuadro.Java
class Cuadro {
public static void main (String args[]) {
        int l ,a;
        if (args.length == 2) {
            l = Integer.valueOf(args[0]).intValue();
            a = Integer.valueOf(args[1]).intValue();
         }
         else {
          l= 20;
          a= 15;
         }
          for (int i=l; i>0; i--){
            System.out.print("*");
            }
            System.out.print("\n");
            for (int i= a-2; i>0; i--){
             System.out.print("*");
               for(int j=l-2; j>0; j--) {
                  System.out.print(" ");
                  }
                  System.out.print("*\n");
                  }
                for (int i=l; i>0; i--){
                System.out.print("*");
                }
              System.out.print("\n");
           }
}

Java´Â "ÄÄÆÄÀÏ À¯´Ö(±â´É ´ÜÀ§)"¸¦ Á¤ÀÇÇϱ⠶§¹®¿¡ ¼Ò½º ÆÄÀÏ¿¡°Ô ÁÖ¾îÁø À̸§Àº ¸Å¿ì Áß¿äÇÏ´Ù. ÆÄÀÏÀº Çϳª ÀÌ»óÀÇ Å¬·¡½ºÀÇ Á¤ÀǸ¦ Æ÷ÇÔÇÒ ¼öµµ ÀÖ´Ù. ÄÄÆÄÀÏ·¯´Â ¼Ò½º ÆÄÀÏÀÌ È®ÀåÀÚ .Java(4 ¹®ÀÚ)À» °¡Áö°í ÀÖÀ¸¸®¶ó°í ¿¹»óÇÑ´Ù. °á°úÀûÀ¸·Î, ¸î¸î ½Ã½ºÅÛÀº ±×°ÍÀ» Áö¿øÇÏÁö ¾Ê´Â´Ù.(DOS or Windows 3.1)

¿¹Á¦¿¡¼­ Á¤ÀÇµÈ Å¬·¡½ºÀÇ À̸§Àº ¼Ò½º ÆÄÀÏÀÇ À̸§°ú ÇÔ²² µ¿½Ã¿¡ ¹ß»ýÇÑ´Ù. ÀÌ°ÍÀº ÀÚ¹ÙÀÇ Å¬·¡½º¾È¿¡ ¹Ýµå½Ã ¸ðµç Äڵ尡 ÀÖ¾î¾ß ÇÑ´Ù. ±ÔÄ¢¿¡ ÀÇÇÏ¿© Ŭ·¡½ºÀÇ À̸§Àº Ŭ·¡½º¸¦ Æ÷ÇÔÇÑ ¼Ò½º ÆÄÀÏÀÇ À̸§°ú ÇÔ²² µ¿½Ã¿¡ ¹ß»ýÇØ¾ß ÇÑ´Ù. ¶Ç, Java´Â ´ë¼ÒºÐÀÚ¸¦ ±¸ºÐÇÑ´Ù(´ë¹®ÀÚ³ª ¼Ò¹®ÀÚÀÎ °æ¿ì).

Ä¿¸Çµå ¶óÀΠŸÀÔ¿¡¼­ ¿¹Á¦¸¦ ÄÄÆÄÀÏÇÏ´Â ¹æ¹ýÀº :

> javac Cuadro.java

Java ÄÄÆÄÀÏ·¯(¸ðµç °ÍÀÌ OK µÇ¾ú´Ù¸é)Àº ´ç¿¬È÷ ¹ÙÀÌ·¯¸®(bytecode)Æû Æ÷ÇÔÇÏ°í, Çؼ® ÇÁ·Î±×·¥¿¡ ÀÇÇØ ½ÇÇà µÉ¼ö ÀÖ´Â Cuadro.class ÆÄÀÏÀ» »ý¼º½ÃŲ´Ù.

> java Cuadro

Java ¼Ò½º Äڵ带 ÄÄÆÄÀÏ ÇÒ¶§, ƯÀ¯ÇÑ °¢°¢ÀÇ Å¬·¡½º´Â Ŭ·¡½º·Î¼­ÀÇ °°Àº À̸§°ú °ü·ÃµÇ´Â °ÍÀ» º¸Á¸ÇÑ´Ù. ±×°ÍÀº Ŭ·¡½º°¡ ¼Ò½º ÆÄÀÏ¿¡¼­ .class ÆÄÀÏ·Î º¸Á¸ÇÏ´Â °ÍÀ» Æ÷ÇÔÇϱ⠶§¹®¿¡ ¼Ò½º ÆÄÀÏ¿¡°Ô °°Àº À̸§À» ÁÖ´Â °ÍÀº ÁÁÀº ½À°üÀÌ´Ù.

¿¹Á¦ Cuadro.javaÀÇ ´Ü¼øÇÔ¿¡µµ ºÒ±¸ÇÏ°í Java¿Í ÀüÇüÀûÀÎ Java ÇÁ·Î±×·¥ÀÇ ±¸¼ºÀÇ ±âº»µéÀ» ÀÌÇØÇÏ´Â °ÍÀ» µ½´Â´Ù.

¿ì¼± ÀÌ ¿¹Á¦°¡ HTML ÆÄÀÏ¿¡ Æ÷Ç﵃ ¼ö ÀÖ´Â ¾ÖÇø´ÀÌ ¾Æ´Ï¶ó´Â °ÍÀ» °í·ÁÇÑ Ä¿¸Çµå ¶óÀο¡ ÀÖ´Â ÀÚ¹Ù Çؼ® ÇÁ·Î±×·¥¿¡ ÀÇÇØ ½ÇÇàµÇ´Â µ¶¸³ÀûÀÎ ÇÁ·Î±×·¥ÀÌ´Ù.

ÇÁ·Î±×·¥ÀÇ Ã¹¹ø° ¶óÀÎÀº :

class Cuadro {

ù¹ø° ´Ü¾î´Â ¾ð¾îÀÇ ¾Ö¾àµÈ Åä±ÙÀÌ´Ù. ±×°ÍÀº "Cuadro"ÀÎ °æ¿ì¿¡ »õ·Î¿î Ŭ·¡½º¸íÀÇ Á¤ÀǸ¦ ³ªÅ¸³­´Ù. -- ½ºÆäÀο¡ ÀÖ´Â Á¦°ö -- ±×°ÍÀÇ µÎ Áß°ýÈ£ {} »çÀÌ¿¡ Á¤È®ÇÑ ¸ðµç Ŭ·¡½ºÀÇ Á¤ÀÇ°¡ Æ÷ÇԵȴÙ. Java¿¡¼­ ¸ðµç ÇÁ·Î±×·¥ÀÇ ÀÛ¾÷Àº Ŭ·¡½ºÀÇ ¾È¿¡ ÀÖ¾î¾ß ÇÑ´Ù´Â °ÍÀ» ÁÖÀÇÇÏ¿©¾ß ÇÑ´Ù.

´ÙÀ½ ¶óÀÎÀº:

public static void main (String args[]) {

±×°ÍÀº main()À̶ó´Â À̸§À» °¡Áö´Â ¸Þ¼Òµå¸¦ ¼±¾ðÇÑ´Ù. ¸ðµç Java ¾îÇø®ÄÉÀ̼ÇÀº main()(C/C++°ú ºñ½ÁÇÏ°Ô)À̶ó°í ºÒ¸®´Â ¸Þ¼Òµå·Î ½ÇÇàÀ» ½ÃÀÛÇÑ´Ù. ´ÙÀ½Àº ¿¹Á¦¸¦ ÀÌÇØÇϱâ À§ÇØ ¾à°£ÀÇ ¼¼ºÎ»çÇ×À» ÇÊ¿äÇÑ ÁÖ¼®À» ´Þ°Ú´Ù(´ÙÀ½¿¡ ¿Ã¸± ±â»ç¿¡ ´õ ±íÀÌÀÖ°Ô ¼³¸íÇÑ´Ù).

Å°¿öµå publicÀº Ŭ·¡½ºÀÇ ¸â¹öÀÇ ¸Þ¼ÒµåµéÀÇ À¯È£¹üÀ§¸¦ Á¦¾îÇÑ´Ù. Ŭ·¡½º°¡ publicÀ¸·Î ¼±¾ðµÈ ÈÄ Å¬·¡½º´Â Ŭ·¡½º ¹Û¿¡¼­ Á¤ÀÇµÈ Äڵ忡 ÀÇÇØ »ç¿ëµÉ ¼ö ÀÖ´Ù. Å°¿öµå staticÀº Ŭ·¡½º¸¦ ºÎÃß±æ ÇÊ¿ä°¡ ÀÖÁö ¾Ê°í È£ÃâµÇ±â À§ÇØ main()¸Þ¼Òµå¸¦ °­¿äÇÑ´Ù. Void´Â ¸Þ¼Òµå°¡ ¾î¶°ÇÑ °ª(¸®ÅÏ°ª)µµ µÇµ¹·Á ÁÖÁö ¾Ê´Â´Ù´Â °ÍÀ» ³ªÅ¸³½´Ù. ¿¹Á¦¿¡¼­ mainÀÇ ¸Å°³º¯¼ö·Î StringŬ·¡½º·ÎºÎÅÍ ÀνºÅϽºÀÇ Çà·Ä·Î ÀâÇôÀÖ´Â °Í°ú °°ÀÌ functionÀ̳ª ¸Þ¼Òµå¿¡°Ô ¸Å°³º¯¼ö¸¦ ³Ñ°ÜÁÖ±â À§Çؼ­´Â functionÀ̸§ µÚ¿¡ ¾²¿©Áø ¼Ò°ýÈ£¸¦ ÀÌ¿ëÇÑ´Ù.

¸í¹éÇÏ°Ô ¸Þ¼ÒµåÀÇ ¸ðµç ÄÚµå´Â Áß°ýÈ£ »çÀÌ¿¡ µÑ·Á½ÎÀδÙ. ´ÙÀ½ ¶óÀÎÀº:

 int l, a ;

µÎ°³ÀÇ Á¤¼ö º¯¼ö¸¦ ¼±¾ðÇÑ´Ù. ÀÚ¹Ù¿¡¼­´Â º¯¼ö¸¦ »ç¿ëÇϱâ Àü¿¡ ¸ðµç º¯¼ö°¡ ¼±¾ðµÇ¾î¾ß ÇÑ´Ù. ÁÖÀÇ, °¢°¢ÀÇ ÄÚµå ³¡ºÎºÐ¿¡´Â ";(¼¼¹ÌÄÝ·Ð)"ÀÌ ÀÖ¾î¾ß ÇÑ´Ù.

³ª¸ÓÁö ÄÚµåµéÀº ÀÛÀº ¾Ë°í¸®ÁòÀ» ±¸ÇöÇÑ´Ù :

  1. Å×½ºÆ®½Ã ¾ÆÅ°¸ÕÆ®ÀÇ ¿À¸¥ÂÊ ¼ö¸¦ Á¦°øÇÑ´Ù:
    If (args.length==2)
    
  2. ¸Å°³ º¯¼ö°¡ Á¦°øµÈ´Ù¸é, ±×°ÍµéÀº Á¤¼öÀÇ º¯¼ö¿¡ ÇÒ´çµÈ´Ù:
      l = Integer.valueOf(args[0]).intValue();
      a = Integer.valueOf(args[1]).intValue();
    
  3. ±×·¸Áö ¾ÊÀ¸¸é º¯¼öÀÇ µðº¼Æ®°ªÀ» ÃʱâÈ­ÇÑ´Ù:
      l = 20;
      a = 15;
    
  4. ÇÁ·Î±×·¥ÀÇ ³ª¸ÓÁöºÎºÐÀÇ ¸í·É¾îµéÀº È­¸é¿¡ Á¦°öÀ» ±×¸°´Âµ¥ ÇÊ¿äÇÑ °ÍÀÌ´Ù. ƯÈ÷ ÇÁ¸°Æ® ÇÏ·Á°í Çϸé:
    System.out.print()
    

    print()Àº ¹®ÀÚ¿­ ¾Æ±â¸ÕÆ®·Î ÅëÇØ ÀμâÇÑ´Ù. SystemÀº ½Ã½ºÅÛ¿¡ Á¢±ÙÀ» Çã¶ôÇÏ´Â Á¤ÀÇµÈ Å¬·¡½º°í, out Äֿܼ¡ ¿¬°áµÈ Ãâ·Â ¿­ÀÌ´Ù. ¶ÇÇÑ,

    for (int i=l; i>0; i--)
    

    ±â´ëÇÑ ´ë·Î, ¿ì¸®°¡ C/C++°ú ´Ù¸¥ ¾ð¾î¿¡¼­ °æÇèÇÑ °Í °°ÀÌ ½ÇÇàµÈ´Ù.

µ¶ÀÚ´Â ÀÌ ÀÛÀº Äڵ尡 ¾î¶»°Ô ÄÄÆÄÀÏµÇ°í ½ÇÇàµÇ´ÂÁö¸¦ °Ë»çÇÏ´Â °Í°ú ¶ÇÇÑ, ´Ù¾çÇÑ Ç÷§Æû ¾Æ·¡ : Linux, À©µµ¿ìÁî 95(ÇöÀç´Â ÀÌ°ÍÀ¸·Î »ç¿ëÇÏÁö ¾ÊÁö¸¸!)¿¡¼­ ÄÄÆÄÀÏµÈ ¿ÀºêÁ§Æ® Cuadro.class¸¦ ½ÇÇàÇÔÀ¸·Î½á ÄÚµåÀÇ À̽ļºÀ» °Ë»çÇÏ´Â °Í°ú ±×°ÍÀÌ ¾î¶°ÇÑ Ç÷§Æû¿¡¼­µµ ¶È°°ÀÌ ½ÇÇàµÇ´Â °ÍÀ» º¸´Â °ÍÀº ÁÁÀº °úÁ¦°¨ÀÌ´Ù.

¿ä¾à

¿ì¸®´Â ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î¼­ÀÇ JavaÀÇ ÀϹÝÀûÀÎ ±â´Éµé Áß ÀϺθ¦ ¾Ë¾Æº¸¾Ò´Ù.¿ì¸®´Â ÇÁ·Î±×·¥ Çϱâ À§ÇØ Ãâ¹ßÇß°í, ±ä ±æÀ» °¡±â À§ÇØ, ´ÙÀ½ ¿¬Àç¿¡¼­ ¾ð¾îÀÇ ´õ¸¹Àº ±â¼úÀ» ¾µ °ÍÀÌ´Ù. ´ÙÀ½ ¿¬Àç¿¡¼­, Á¤Àǵé°ú º¯¼öÀÇ Å¸ÀÔ, ±âº»ÀûÀÎ ¸í·É¾î, Ŭ·¡½º µîÀ» °øºÎÇÏ°Ô µÉ °ÍÀÌ´Ù. ÁÖµÈ ¾ð¾îÀÇ ¸í¼¼ÀÌ´Ù.

¿¬ÀçÀÇ ±âÃʸ¦ ÁØ ´ÙÀ½ÀÇ ÃâÆǹ°°ú URL¿¡¼­ °¢°¢ÀÇ ±ÛµéÀ» ÂüÁ¶ÇÏ¿´´Ù.

  • JAVA Reference Manual. Patrick Naughton Herbert Schildt. McGraw-Hill.
  • Programming with JAVA. Tim Ritchey. Prentice Hall.
  • Tutorial de Java . Spanish manual in HTML format that can be obtained at www.fie.us.es/info/internet/J AVA. Agustín Froufe.
  • The Java Tutorial. English manual in HTML www.javasoft.com. Sun.
  • Tutorial from the JDK distribution.

¹ø¿ª : À̼öȯ


º» À¥»çÀÌÆ®´Â Miguel Angel Sepulveda¾¾¿¡ ÀÇÇØ °ü¸®µË´Ï´Ù.
© Emre Demiralp 1998
LinuxFocus 1998