|
|
|
|
1Àå. ²®ÁúÀ» ±ú°í ÀÚ¹Ù´Â ¾î¶² ½ÄÀ¸·Î µ¹¾Æ°¥±î? ÀÚ¹Ù ÄÚµåÀÇ ±¸Á¶ Ŭ·¡½º¸¦ ÇØºÎÇսô٠main() ¸Þ¼Òµå ¼øÈ¯¹® Á¶°Ç¿¡ µû¸¥ ºÐ±â¹® ¡®¸ÆÁÖ 99º´¡¯ ¾ÖÇø®ÄÉÀÌ¼Ç ÄÚµå ÀÚµ¿ ±¸¹® »ý¼º±â ÁýÁß Åä·Ð: ÄÄÆÄÀÏ·¯¿Í ÀÚ¹Ù °¡»ó ¸Ó½Å ¿¬½À¹®Á¦¿Í ÆÛÁñ 2Àå. °´Ã¼ ¸¶À»·ÎÀÇ ¿©Çà ÀÇÀÚ ÀüÀï(°´Ã¼ÁöÇâ¸Ç ºê·¡µå¿Í ÇÁ·Î½ÃÀú¸Ç ·¡¸®) »ó¼Ó(±âÃÊ) ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵åÇÏ´Â ¹æ¹ý(±âÃÊ) Ŭ·¡½º ¾È¿¡´Â ¹¹°¡ ÀÖÀ»±î?(¸Þ¼Òµå, ÀνºÅϽº º¯¼ö) ù¹øÂ° °´Ã¼¸¦ ¸¸µé¾îº¾½Ã´Ù main()À» »ç¿ëÇÏ´Â ¹æ¹ý °ÔÀÓ ÄÚµå ¾Ë¾Æ ¸ÂÃ߱⠿¬½À¹®Á¦¿Í ÆÛÁñ 3Àå. ³× º¯¼ö¸¦ ¾Ë¶ó º¯¼ö ¼±¾ð(ÀÚ¹Ù¿¡¼´Â À¯ÇüÀ» ±î´Ù·Ó°Ô µûÁý´Ï´Ù) ¿ø½Ã º¯¼ö À¯Çü Àڹ٠Ű¿öµå ·¹ÆÛ·±½º º¯¼ö(°´Ã¼¿¡ ´ëÇÑ ¸®¸ðÄÁ) °´Ã¼ ¼±¾ð°ú ´ëÀÔ °¡ºñÁö Ä÷º¼Ç ±â´ÉÀÌ ÀÖ´Â Èü¿¡¼ÀÇ °´Ã¼ ¹è¿ ¿¬½À¹®Á¦¿Í ÆÛÁñ 4Àå. °´Ã¼ÀÇ Çൿ ¸Þ¼Òµå¿Í °´Ã¼ÀÇ »óÅ ¸Þ¼Òµå ÀÎÀÚ¿Í ¸®ÅÏ À¯Çü °ªÀ¸·Î Àü´Þ °ÔÅÍ¿Í ¼¼ÅÍ Ä¸½¶È ¹è¿¿¡¼ ·¹ÆÛ·±½º¸¦ »ç¿ëÇÏ´Â ¹æ¹ý ¿¬½À¹®Á¦¿Í ÆÛÁñ 5Àå. ¸Þ¼Òµå¸¦ ´õ °·ÂÇÏ°Ô ´åÄÄ °¡¶ó¾ÉÈ÷±â °ÔÀÓ ¸¸µé±â °£´ÜÇÑ ´åÄÄ °ÔÀÓ Áغñ Äڵ带 ¸¸µé¾îº¾½Ã´Ù(°ÔÀÓÀ» ¸¸µé±â À§ÇÑ À¯»çÄÚµå) °£´ÜÇÑ ´åÄÄ °ÔÀÓÀ» ¸¸µé±â À§ÇÑ Å×½ºÆ® ÄÚµå °£´ÜÇÑ ´åÄÄ °ÔÀÓ ÄÚµå ÀÛ¼º °£´ÜÇÑ ´åÄÄ °ÔÀÓ ÃÖÁ¾ ÄÚµå Math.random()À¸·Î ³¼ö¸¦ ¸¸µé¾î³»´Â ¹æ¹ý ¸í·ÉÇà¿¡¼ »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ³»¿ëÀ» ¹Þ¾Æ¿À±â À§ÇÑ ÀνºÅÏÆ® ÄÚµå for ¼øÈ¯¹®À» ½á¼ ¼øÈ¯½ÃŰ´Â ¹æ¹ý ¿ø½Ã°ªÀ» ´õ Å« º¯¼ö¿¡¼ ÀÛÀº º¯¼ö·Î ij½ºÆÃÇÏ´Â ¹æ¹ý Integer.parseInt()¸¦ °¡Áö°í StringÀ» int·Î º¯È¯ÇÏ´Â ¹æ¹ý ¿¬½À¹®Á¦¿Í ÆÛÁñ 6Àå. ÀÚ¹Ù ¶óÀ̺귯¸® °£´ÜÇÑ ´åÄÄ °ÔÀÓ ¹ö±× ºÐ¼® ArrayList(ÀÚ¹Ù API¸¦ Ȱ¿ëÇÏ´Â ¹æ¹ý) ´åÄÄ Å¬·¡½º ÄÚµå °íÄ¡±â ÁøÂ¥ °ÔÀÓ ¸¸µé±â(´åÄÄ °¡¶ó¾ÉÈ÷±â) ÁøÂ¥ °ÔÀÓÀ» ¸¸µé±â À§ÇÑ Áغñ ÄÚµå ÁøÂ¥ °ÔÀÓÀ» ¸¸µé±â À§ÇÑ ÄÚµå ºÎ¿ï Ç¥Çö½Ä ¶óÀ̺귯¸®(ÀÚ¹Ù API) Ȱ¿ë ÆÐŰÁö »ç¿ë ¹æ¹ý(import ¼±¾ð¹®, Àüü À̸§) HTML API ¹®¼¿Í ·¹ÆÛ·±½º ¼ÀûÀ» Ȱ¿ëÇÏ´Â ¹æ¹ý ¿¬½À¹®Á¦¿Í ÆÛÁñ 7Àå. °´Ã¼¸¶À»¿¡¼ÀÇ ´õ ³ªÀº »î »ó¼ÓÀÇ ÀÌÇØ(¼öÆÛŬ·¡½º¿Í ÇÏÀ§Å¬·¡½º »çÀÌÀÇ °ü°è) »ó¼Ó Æ®¸® ¼³°è(Animal ½Ã¹Ä·¹À̼Ç) Áߺ¹µÈ Äڵ带 ÇÇÇÏ´Â ¹æ¹ý(»ó¼Ó Ȱ¿ë ¹æ¹ý) ¸Þ¼Òµå ¿À¹ö¶óÀ̵ù "A´Â B´Ù" °ü°è¿Í "A¿¡´Â B°¡ ÀÖ´Ù" °ü°è(¿åÁ¶ ¾ÈÀÇ ¾Æ°¡¾¾) ¼öÆÛŬ·¡½º·ÎºÎÅÍ »ó¼Ó¹Þ´Â °Í »ó¼Ó Ȱ¿ëÀÇ ÀåÁ¡ ´ÙÇü¼º(ÇÏÀ§Å¬·¡½º °´Ã¼¿¡ ´ëÇØ ¼öÆÛÀ¯Çü ·¹ÆÛ·±½º¸¦ »ç¿ëÇÏ´Â ¹æ¹ý) ¿À¹ö¶óÀ̵ù ±ÔÄ¢(ÀÎÀÚ¿Í ¸®ÅÏ À¯ÇüÀº °Çµå¸®Áö ¸¿½Ã´Ù) ¸Þ¼Òµå ¿À¹ö·Îµù(¸Þ¼Òµå¸íÀ» ÀçȰ¿ëÇÏ´Â °Í»ÓÀÔ´Ï´Ù) ¿¬½À¹®Á¦¿Í ÆÛÁñ 8Àå. ½É°¢ÇÑ ´ÙÇü¼º ÀνºÅϽº¸¦ ¸¸µé ¼ö ¾ø´Â Ŭ·¡½º Ãß»ó Ŭ·¡½º(ÀνºÅϽº¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù) Ãß»ó ¸Þ¼Òµå(¹Ýµå½Ã ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù) ´ÙÇü¼ºÀ» ½ÇÁ¦·Î Ȱ¿ëÇÏ´Â ¹æ¹ý Object Ŭ·¡½º(¸ðµç Ŭ·¡½ºÀÇ ¼öÆÛŬ·¡½º) ArrayList¿¡¼ °´Ã¼¸¦ ²¨³»´Â ¹æ¹ý(±âº»ÀûÀ¸·Î ¸ðµÎ Object À¯ÇüÀÔ´Ï´Ù) ÄÄÆÄÀÏ·¯¿¡¼ ·¹ÆÛ·±½º À¯ÇüÀ» üũÇÏ´Â ¹æ¹ý ³»ºÎ °´Ã¼ ´ÙÇüÀû ·¹ÆÛ·±½º °´Ã¼ ·¹ÆÛ·±½º ij½ºÆÃ(»ó¼Ó Æ®¸®¿¡¼ ¾Æ·¡·Î ³»·Á°¡´Â ¹æ¹ý) Á×À½ÀÇ ´ÙÀ̾Ƹóµå(´ÙÁß »ó¼Ó¿¡¼ »ý±æ ¼ö ÀÖ´Â ¹®Á¦) ÀÎÅÍÆäÀ̽º »ç¿ë ¹æ¹ý ¿¬½À¹®Á¦¿Í ÆÛÁñ 9Àå. °´Ã¼ÀÇ »î°ú Á×À½ ½ºÅðú Èü, °´Ã¼¿Í º¯¼ö°¡ »ì¾Æ°¡´Â °÷ ½ºÅÿ¡ µé¾îÀÖ´Â ¸Þ¼Òµå Áö¿ª º¯¼ö°¡ ÀÖ´Â À§Ä¡ ÀνºÅϽº º¯¼ö°¡ ÀÖ´Â À§Ä¡ °´Ã¼ »ý¼º »ý¼ºÀÚ(new¸¦ ½ÇÇàÇÏ¸é ½ÇÇàµÇ´Â ÄÚµå) »õ·Î¿î Duck °´Ã¼ÀÇ »óŸ¦ ÃʱâÈÇÏ´Â ¹æ¹ý ¿À¹ö·ÎµåµÈ »ý¼ºÀÚ ¼öÆÛŬ·¡½º »ý¼ºÀÚ this()¸¦ ½á¼ ¿À¹ö·ÎµåµÈ »ý¼ºÀÚ¸¦ È£ÃâÇÏ´Â ¹æ¹ý °´Ã¼ÀÇ »î °¡ºñÁö Ä÷º¼Ç ¿¬½À¹®Á¦¿Í ÆÛÁñ 10Àå. ¼ýÀÚ´Â Á¤¸» Áß¿äÇÕ´Ï´Ù Math Ŭ·¡½º Á¤Àû ¸Þ¼Òµå Á¤Àû º¯¼ö »ó¼ö(static final º¯¼ö) Math ¸Þ¼Òµå(random(), round(), abs() µî) ·¡ÆÛ Ŭ·¡½º(Integer, Boolean, Character µî) ¿ÀÅä¹Ú½Ì ¼ýÀÚ Æ÷¸ÅÆÃ ³¯Â¥ Æ÷¸ÅÆÃ ¹× Á¶ÀÛ import static ±¸¹® ¿¬½À¹®Á¦¿Í ÆÛÁñ 11Àå. À§ÇèÇÑ Çൿ À½¾Ç ÇÁ·Î±×·¥ ¸¸µé±â(ºñÆ®¹Ú½º) À§ÇèÇÑ Äڵ带 È£ÃâÇØ¾ß ÇÑ´Ù¸é ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä? ¿¹¿Ü¸¦ ÅëÇØ ¡°¹º°¡ ¾È ÁÁÀº ÀÏÀÌ »ý°åÀ½¡±À» ¾Ë ¼ö ÀÖ½À´Ï´Ù ÄÄÆÄÀÏ·¯¿¡¼ À§Çè ¿ä¼Ò¸¦ ÆÄ¾ÇÇϰí ÀÖ´ÂÁö È®ÀÎÇØÁÝ´Ï´Ù try/catch¸¦ ½á¼ ¿¹¿Ü¸¦ Àâ¾Æ³»´Â ¹æ¹ý try/catch ºí·Ï¿¡¼ÀÇ È帧 Á¦¾î finally ºí·Ï ¿©·¯ °¡Áö ¿¹¿Ü¸¦ Àâ¾Æ³»´Â ¹æ¹ý ¿¹¿Ü ¼±¾ð ó¸® ¶Ç´Â ¼±¾ð ±ÔÄ¢ ÄÚµå Űģ(¼Ò¸®¸¦ ¸¸µå´Â ¹æ¹ý) ¿¬½À¹®Á¦¿Í ÆÛÁñ 12Àå. ±×·¡ÇÈ À̾߱â ù¹øÂ° GUI »ç¿ëÀÚ À̺¥Æ® ¸®½º³Ê ÀÎÅÍÆäÀ̽º ±¸Çö ¹æ¹ý ¹öưÀÇ ActionEvent¸¦ ¹Þ´Â ¹æ¹ý GUI¿¡ ±×·¡ÇÈÀ» Ãâ·ÂÇÏ´Â ¹æ¹ý paintComponent() Graphics2D °´Ã¼ ȸ鿡 ¹öư µÎ °³ ÀÌ»óÀ» Áý¾î³Ö´Â ¹æ¹ý ³»ºÎ Ŭ·¡½º ¾Ö´Ï¸ÞÀÌ¼Ç ÄÚµå Űģ ¿¬½À¹®Á¦¿Í ÆÛÁñ 13Àå. ½ºÀ®À» ¾Ë¾Æº¾½Ã´Ù ½ºÀ® ±¸¼º¿ä¼Ò ·¹À̾ƿô °ü¸®ÀÚ ¼¼ °¡Áö ·¹À̾ƿô °ü¸®ÀÚ BorderLayout FlowLayout BoxLayout JTextField JTextArea JCheckBox JList ÄÚµå Űģ ¿¬½À¹®Á¦¿Í ÆÛÁñ 14Àå. °´Ã¼ ÀúÀå °´Ã¼ÀÇ »óŸ¦ ÀúÀåÇÏ´Â ¹æ¹ý Á÷·ÄÈµÈ °´Ã¼¸¦ ÆÄÀÏ·Î ÀúÀåÇÏ´Â ¹æ¹ý ÀÚ¹ÙÀÇ ÀԷ°ú Ãâ·Â ½ºÆ®¸² °´Ã¼ Á÷·ÄÈ Serializable ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â ¹æ¹ý transient º¯¼ö¸¦ »ç¿ëÇÏ´Â ¹æ¹ý °´Ã¼¸¦ ¿ªÁ÷·ÄÈÇÏ´Â ¹æ¹ý ÅØ½ºÆ® ÆÄÀÏ¿¡ ¾²´Â ¹æ¹ý java.io.File ÅØ½ºÆ® ÆÄÀϷκÎÅÍ Àоî¿À´Â ¹æ¹ý split()À» ½á¼ StringÀ» ÅäÅ«À¸·Î ³ª´©´Â ¹æ¹ý ÄÚµå Űģ ¿¬½À¹®Á¦¿Í ÆÛÁñ 15Àå. ¿¬°áÇÏ´Â ¹æ¹ý äÆÃ ÇÁ·Î±×·¥ °³¿ä ¿¬°á, ¼Û½Å, ¼ö½Å ³×Æ®¿öÅ© ¼ÒÄÏ TCP Æ÷Æ® SocketÀ¸·ÎºÎÅÍ µ¥ÀÌÅ͸¦ Àд ¹æ¹ý(BufferedReader »ç¿ë) SocketÀ¸·Î µ¥ÀÌÅ͸¦ ¾²´Â ¹æ¹ý(PrintWriter »ç¿ë) ¿À´ÃÀÇ Á¶¾ð Ŭ¶óÀÌ¾ðÆ® ÇÁ·Î±×·¥ ¸¸µé±â °£´ÜÇÑ ¼¹ö ¸¸µé±â ¿À´ÃÀÇ Á¶¾ð ¼¹ö ÄÚµå äÆÃ Ŭ¶óÀÌ¾ðÆ® ¸¸µé±â ´ÙÁß È£Ãâ ½ºÅà »õ·Î¿î ½º·¹µå¸¦ ½ÃÀÛÇÏ´Â ¹æ¹ý Runnable ÀÎÅÍÆäÀ̽º »õ·Î¿î Thread °´Ã¼ÀÇ ¼¼ °¡Áö »óÅ ½ÇÇà °¡´ÉÇÑ »óÅÂ¿Í ½ÇÇà ÁßÀÎ »óÅ »çÀÌÀÇ Àüȯ ½º·¹µå ½ºÄÉÁÙ·¯ ½º·¹µå¸¦ ÁßÁö½ÃŰ´Â ¹æ¹ý ½º·¹µå µÎ °³¸¦ ¸¸µé¾î¼ ½ÃÀÛÇÏ´Â ¹æ¹ý º´Ç༺ ¹®Á¦ ¶óÀ̾ð°ú ¸ð´ÏÄ«ÀÇ º´Ç༺ ¹®Á¦¸¦ ÄÚµå·Î... ¶ôÀ» °Å´Â ¹æ¹ý ¸ðµç °´Ã¼¿¡´Â ¶ôÀÌ ÀÖ½À´Ï´Ù °øÆ÷ÀÇ ¡®°»½Å ³»¿ë ¼Õ½Ç¡¯ ¹®Á¦ µ¿±âÈµÈ ¸Þ¼Òµå ¶ôÀ» ÇØÁ¦ÇÒ ¼ö ¾ø´Â °æ¿ì ¸ÖƼ½º·¹µå¸¦ »ç¿ëÇÑ ChatClient ÄÚµå ÀνºÅÏÆ® SimpleChatServer ¿¬½À¹®Á¦¿Í ÆÛÁñ 16Àå. ÀڷᱸÁ¶ Ä÷º¼Ç Collections.sort()¸¦ ÀÌ¿ëÇÑ ArrayList Á¤·Ä Á¦³×¸¯°ú Çü ¾ÈÀü¼º Comparable ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â Ç׸ñ Á¤·Ä¹ý Comparator¸¦ Ȱ¿ëÇÑ Á¤·Ä¹ý Ä÷º¼Ç API - ¸®½ºÆ®, ÁýÇÕ, ¸Ê HashSetÀ» ÀÌ¿ëÇØ¼ Áߺ¹À» ÇÇÇÏ´Â ¹ý hashCode() ¹× equals() ¿À¹ö¶óÀ̵ù HashMap ´ÙÇü¼ºÀ» À§ÇÑ ¿ÍÀϵåÄ«µå Ȱ¿ë ¿¬½À¹®Á¦ ¹× ÆÛÁñ 17Àå. Äڵ带 ¹èÆ÷Çսô٠¹èÆ÷ ¹æ¹ý ¼Ò½º ÄÚµå¿Í Ŭ·¡½º ÆÄÀÏÀº ºÐ¸®Çսô٠½ÇÇà °¡´ÉÇÑ JAR ÆÄÀÏÀ» ¸¸µå´Â ¹æ¹ý ½ÇÇà °¡´ÉÇÑ JAR¸¦ ½ÇÇàÇÏ´Â ¹æ¹ý Ŭ·¡½º¸¦ ÆÐŰÁö¿¡ ³ÖÀ¾½Ã´Ù ÆÐŰÁö¿Í µð·ºÅ丮 ±¸Á¶ ÆÐŰÁö·Î ÄÄÆÄÀÏÇÏ°í ½ÇÇàÇÏ´Â ¹æ¹ý -d ÄÄÆÄÀÏ ¿É¼Ç ½ÇÇà°¡´ÉÇÑ JAR ÆÄÀÏÀ» ¸¸µå´Â ¹æ¹ý(ÆÐŰÁö) À¥À» ÅëÇØ ¹èÆ÷Çϱâ À§ÇÑ ÀÚ¹Ù À¥ ½ºÅ¸Æ®(JWS) JWS ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µé¾î¼ ¹èÆ÷ÇÏ´Â ¹æ¹ý ¿¬½À¹®Á¦¿Í ÆÛÁñ 18Àå. ºÐ»ê ÄÄÇ»ÆÃ ÀÚ¹Ù ¿ø°Ý ¸Þ¼Òµå È£Ãâ(RMI), ÀÚ¼¼ÇÑ ¿¹Á¦ ¼ºí¸´ ¿£ÅÍÇÁ¶óÀÌÁî ÀÚ¹Ù ºóÁî(EJB) Áö´Ï Á¤¸» ÈǸ¢ÇÑ ¹ü¿ë ¼ºñ½º ºê¶ó¿ìÀú¸¦ ¸¸µå´Â ¹æ¹ý ³¡ ºÎ·Ï A ¸¶Áö¸· ºñÆ®¹Ú½º ÄÚµå(Ŭ¶óÀÌ¾ðÆ® ÄÚµå) ¸¶Áö¸· ºñÆ®¹Ú½º ÄÚµå(¼¹ö ÄÚµå) ºÎ·Ï B Top 10 ¸ñ·Ï |
Ãâó : ¾Ë¶óµò |
|
ÀÚ¹Ù ¾ð¾î¸¦ ¸¸³¯ ¼ö ÀÖ´Â »õ·Î¿î ½Ã°¢ <Head First Java> °³Á¤ÆÇ. ÀÚ¹Ù 5.0(ŸÀ̰Å)¿¡ ¸ÂÃç¼ ´Þ¶óÁø ³»¿ëÀ» Àü¸é ¼öÁ¤ º¸¿ÏÇß°í, Ãß°¡µÈ Àå Çϳª(16Àå)¸¦ ÇÒ¾ÖÇØ¼ Á¦³×´Ð°ú Ä÷º¼ÇÀ» ÀÚ¼¼È÷ ´Ù·é´Ù.
ÆÛÁñ, ´Ù¾çÇÑ ±×¸², À¯¸íÇÑ ÀÚ¹Ù °´Ã¼¿ÍÀÇ ÀÎÅͺäµî »ý°¢ÇÒ ¼ö ÀÖ´Â °ÅÀÇ ¸ðµç ¹æ¹ýÀ» µ¿¿øÇØ ÀÚ¹Ù¸¦ ¼Ò°³ÇÑ´Ù. ±×³É Àб⸸ ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, °ÔÀÓµµ ÇØº¸°í, ÆÛÁñµµ Ç®¾îº¸°í, ¹Ì½ºÅ͸®µµ ÇØ°áÇØº¸¸ç »ó»óµµ ÇÏÁö ¸øÇÑ ¹æ¹ýÀ¸·Î ÀÚ¹Ù¸¦ üÇèÇÒ ¼ö ÀÖ´Ù.
±×µ¿¾È ÀÚ¹Ù¿¡ ´ëÇÑ ÀÌÇØ°¡ ¹ÌÈíÇÏ´Ù°í ´À²¼´Ù¸é, ¹«¾ùº¸´Ù ÀÚ¹Ù¸¦ Àç¹ÌÀÖ°í Áñ°Ì°Ô ¹è¿ï ±âȸ¸¦ ã´Â´Ù¸é ³õÄ¥ ¼ö ¾ø´Â Ã¥ÀÌ´Ù. |
Ãâó : ¾Ë¶óµò |
|
|
|
|