· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
À̽Å/ÀÚ¹Ù³ëÆ®


1. ÀÚ¹Ù ÇÁ·Î±×·¡¹Ö ¾ð¾î

1.1. Hello World

  • Hello.java
    public class Example {
      public static void main(String[] args) {
        System.out.println("Hello World!");
      }
    }
  • C++¿Í ´Þ¸® Ŭ·¡½º Á¤ÀÇ µÚ¿¡ ¼¼¹ÌÄÝ·ÐÀÌ ºÙÁö ¾Ê´Â´Ù.
  • main() ÇÔ¼ö°¡ Ŭ·¡½º ³»ºÎ¿¡ ¸Þ½îµå·Î µé¾î°¡ ÀÖ´Ù.
  • ¼Ò½º ÆÄÀÏ À̸§ÀÇ È®ÀåÀÚ´Â .java ÀÌ´Ù.
    command_prompt> javac Hello.java <Enter>
    
  • .java¸¦ ÄÄÆÄÀÏÇϸé .class °¡ »ý¼ºµÈ´Ù.
  • JVM(Java Virtual Machine)Àº .class ¸¦ Àо ½ÇÇàÇÑ´Ù.
  • ½ÇÇàÇÒ .class ÆÄÀÏÀ» JVM¿¡ ³Ñ°ÜÁÙ ¶§¿¡´Â È®ÀåÀÚ¸¦ »ý·«ÇÑ´Ù.
    command_prompt> java Hello <Enter>
    

1.2. ÁÖ¼®(comment)

  • C++ ¾ð¾î¿Í µ¿ÀÏ

1.3. ½Äº°ÀÚ(identifier)

1.4. ÀÚ·áÇü

  • ±âº»Çü(primitive type)°ú ÂüÁ¶Çü(reference type)À¸·Î ±¸ºÐÇÑ´Ù.
    • ±âº»ÇüÀº Á¤¼öÇü(byte, short, int, long), ½Ç¼öÇü(float, double), ³í¸®Çü(boolean), ¹®ÀÚÇü(char)À¸·Î ³ª´µ°í, ÂüÁ¶ÇüÀº C ¾ð¾îÀÇ Æ÷ÀÎÅÍ¿¡ ÇØ´çÇÑ´Ù.
    • ±âº»ÇüÀÌ ¾Æ´Ñ ¸ðµç ÀÚ·áÇüÀº ÂüÁ¶ÇüÀÌ´Ù. Áï Ŭ·¡½º·Î ¼±¾ðÇÏ´Â ¸ðµç ÀÚ·áÇüÀº ÂüÁ¶ÇüÀÌ´Ù.
    • ÂüÁ¶ÇüÀº C ¾ð¾îÀÇ Æ÷ÀÎÅͳª C++ ¾ð¾îÀÇ reference ¿Í ºñ½ÁÇÑ °³³äÀ» °®°í ÀÖ´Ù.
    • ÀÎÀÚÀü´Þ ¹æ½Ä¿¡ ÀÖ¾î ±âº»ÇüÀº call-by-value ¹æ½ÄÀ», ÂüÁ¶ÇüÀº call-by-reference ¹æ½ÄÀ» »ç¿ëÇÑ´Ù.
  • Ç÷§Æû »çÀÌÀÇ È£È¯¼ºÀ» ¼³°è ±âÁØÀ¸·Î Çϴ Ư¼º ¶§¹®¿¡ C ¾ð¾î¿¡ ºñÇØ ÀÚ·áÇü »çÀÌÀÇ º¯È¯À» ¾ö°ÝÈ÷ Á¦ÇÑÇÏ°í ÀÖ´Ù.

1.4.1. byte

  • 8 bits
  • signed

1.4.2. short

  • 16 bits
  • signed

1.4.3. int

  • 32 bits
  • signed

1.4.4. long

  • 64 bits
  • signed

1.4.5. float

  • 32 bits

1.4.6. double

  • 64 bits

1.4.7. boolean

  • false ¿Í true °ªÀ» °®´Â´Ù.
  • Å©±â´Â?

1.4.8. char

  • 16 bits
  • unsigned

1.4.9. void

  • C ¾ð¾î¿Í µ¿ÀÏ

1.4.10. ¸®ÅÍ·²(lieral)

  • C ¾ð¾î¿Í À¯»ç
  • long Çü - ¼ýÀÚ µÚ¿¡ Á¢¹Ì»ç·Î L ¶Ç´Â l ÀÌ ¿Â´Ù.
  • float Çü - ¼ýÀÚ µÚ¿¡ Á¢¹Ì»ç·Î F ¶Ç´Â f °¡ ¿Â´Ù.
  • double Çü - ¼ýÀÚ µÚ¿¡ Á¢¹Ì»ç·Î D ¶Ç´Â d °¡ ¿Â´Ù.
  • boolean Çü - false, true
  • reference Çü - null

1.4.11. ±âº»Çü¿¡ ¿¬°áµÈ Æ÷Àå Ŭ·¡½º(wrapper class)

  • Byte
  • Short
  • Integer
  • Long
  • Character
  • Float
  • Double
  • Boolean

1.4.12. ±âŸ ¼ö½Ä °ü·Ã Ŭ·¡½º

  • Math
  • Random
    • import java.util.*
  • BigIngeger
    • Å« ¼öÀÇ Á¤¼öÇü
    • import java.math.*
  • BigDecimal
    • Å« ¼öÀÇ ½Ç¼öÇü
    • import java.math.*

1.5. ¿¬»êÀÚ(operators)

  • C ¾ð¾î¿Í À¯»ç
  • sizeof ¿¬»êÀÚ°¡ ¾ø´Ù.

1.5.1. ½¬ÇÁÆ® ¿¬»êÀÚ

1.5.1.1. <<
  • ¿ÞÂÊÀ¸·Î ½¬ÇÁÆ®Çϸ鼭 ¿À¸¥ÂÊ ³¡À» 0 À¸·Î ä¿î´Ù.
1.5.1.2. >>>
  • zero extension
  • ¿À¸¥ÂÊÀ¸·Î ½¬ÇÁÆ®Çϸ鼭 ¿ÞÂÊ ³¡À» 0 À¸·Î ä¿î´Ù.
1.5.1.3. >>
  • sign extension
  • ¿À¸¥ÂÊÀ¸·Î ½¬ÇÁÆ®Çϸ鼭 ¿ÞÂÊ ³¡À» ºÎÈ£¿¡ µû¶ó 0 ¶Ç´Â 1 ·Î ä¿î´Ù.

1.5.2. insanceof

  • ¾î¶² °´Ã¼°¡ ¾î¶² Ŭ·¡½ºÀÇ ÀνºÅϽºÀΰ¡¸¦ ¾Ë¾Æº¸´Â ¿¬»êÀÚÀÌ´Ù.
  • ¿¬»êÀÚÀÇ ¿ÞÂÊ¿¡´Â ¾î¶² °´Ã¼¸¦ °¡¸®Å°´Â ÂüÁ¶Çü º¯¼ö°¡ ¿À°í, ¿À¸¥ÂÊ¿¡´Â Ŭ·¡½º À̸§ÀÌ ¿Â´Ù.
  • ¿¬»ê°ªÀº true ¶Ç´Â false ÀÌ´Ù.
    if( obj instanceof AClass ) {
      doSomething();
    }

1.6. Á¦¾î¹®(control statements)

  • C ¾ð¾î¿Í À¯»ç
    • if-else
    • switch-case-default
    • while
    • do-while
    • for
    • break, contiue, goto
    • return
  • if, while, do-while, for ¹®¿¡¼­ »ç¿ëÇÏ´Â Á¶°Ç½Ä¿¡´Â ¹Ýµå½Ã boolean ½ÄÀÌ ³ª¿Í¾ß ÇÑ´Ù.
  • break ¿Í continue µÚ¿¡ À̸§Ç¥¸¦ ºÙÀ̸é, À̸§Ç¥°¡ ¸í½ÃÇÑ °÷À¸·Î ¸¶Ä¡ C ¾ð¾îÀÇ goto ó·³ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
    Label_01:
      {
        initSomething();
        forint i = 0; i < 10; i++ ) {
          if( doSomething(i) == false ) {
            break Label_01;
          }
        }
      }
  • À̸§Ç¥ ´Þ¸° break ¹®Àº goto ó·³ ¾îµð¼­³ª »ç¿ë °¡´ÉÇÏÁö¸¸, À̸§Ç¥ ´Þ¸° continue ¹®Àº for, while, do-while ¹®¿¡¼­¸¸ »ç¿ë°¡´ÉÇÏ´Ù.

1.7. Ŭ·¡½º

1.7.1. class

class SuperClass { }
  • Ŭ·¡½º Á¤ÀÇ ¹æ½ÄÀº C++ ¾ð¾î¿Í ºñ½ÁÇÏ´Ù.
  • C++ ¿¡¼­ Ŭ·¡½º Á¤ÀÇ´Â ÀÏÁ¾ÀÇ »ç¿ëÀÚ ÀÚ·áÇüÀ» »õ·Î ¸¸µå´Â Á¤Àǹ®À̱⠶§¹®¿¡ Ŭ·¡½º Á¤ÀÇ µÚ¿¡´Â ¼¼¹ÌÄÝ·ÐÀÌ ¹Ýµå½Ã ¿Í¾ß ÇÏÁö¸¸, Java ¾ð¾î¿¡¼­ Ŭ·¡½º Á¤ÀÇ´Â ÀÏÁ¾ÀÇ ºí·° °³³äÀ¸·Î Ŭ·¡½º Á¤ÀÇ µÚ¿¡ ¼¼¹ÌÄÝ·ÐÀÌ ¿Í¼­´Â ¾È µÈ´Ù.
  • Objcet Ŭ·¡½º´Â ¸ðµç Ŭ·¡½ºÀÇ Á¶»óÀÌ¸ç ¾î¶² Ŭ·¡½º¿¡µµ ¼ÓÇÏÁö ¾Ê´Â´Ù.

1.7.2. new

  • new °¡ ÁöÁ¤Çϴ Ŭ·¡½ºÀÇ ÀνºÅϽº¸¦ ¸¸µç´Ù.
    AClass a = new AClass();
    MyClass aMyClass = new MyClass(10, 20, 30);

1.7.3. extends

  • Ŭ·¡½º¸¦ Á¤ÀÇÇÒ ¶§ »ó¼Ó ¹ÞÀ» Ŭ·¡½º¸¦ ÁöÁ¤ÇÑ´Ù.
    class SuperClass { }
    class SubClass extends SuperClass { }
  • extends ¿¡ ÀÇÇÑ ´ÙÁß »ó¼ÓÀº Áö¿øÇÏÁö ¾Ê´Â´Ù.

1.7.4. ¸Þ½îµåÀÇ ¿À¹ö·Îµù(overloading)°ú ¿À¹ö¶óÀ̵ù(overiding)

  • C++ ¾ð¾î¿Í À¯»ç
  • ¿À¹ö·Îµù
    • ÇÑ Å¬·¡½º ³»¿¡ °°Àº À̸§ÀÇ ¸Þ½îµå¸¦ ¿©·¯ °³ µÎ´Â °ÍÀ» ¸»ÇÑ´Ù.
    • ´Ü Àü´ÞÀÎÀÚµéÀÇ ÀÚ·áÇü·Î ¿À¹ö·ÎµùÇÑ ¸Þ½îµåµéÀ» ¸ðµÎ ±¸º°ÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù.
  • ¿À¹ö¶óÀ̵ù
    • ¼öÆÛ-Ŭ·¡½º¿¡ ÀÖ´Â ¸Þ½îµå¿Í À̸§°ú Àü´ÞÀÎÀÚµéÀÇ ÀÚ·áÇüÀÌ °°Àº ¸Þ½îµå¸¦ ¼­ºê-Ŭ·¡½º¿¡¼­ ¼±¾ðÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â °ÍÀ» ¸»ÇÑ´Ù.
    • È£Ãâ ¿ì¼±¼øÀ§´Â ¼­ºê-Ŭ·¡½ºÀÇ ÀνºÅϽº¿¡¼­ ¼±¾ðÇÑ ¸Þ½îµå°¡ ³ô´Ù.

1.7.5. super

  • ¼­ºê-Ŭ·¡½º¿¡¼­ ¼öÆÛ-Ŭ·¡½ºÀÇ »ý¼ºÀÚ¸¦ È£ÃâÇÑ´Ù.
    class SuperClass {
      protected int x, y;

      public SuperClass(int x, int y) {
        this.x = x;
        this.y = y;
      }

      public SubClass extends SuperClass {
        public SubClass(int x, int y) {
          super(x, y);
        }
      }
    }
  • ¼­ºê-Ŭ·¡½ºÀÇ »ý¼ºÀÚ¿¡¼­ super ¸¦ ¸í½ÃÇÏÁö ¾ÊÀ¸¸é ÀÚµ¿À¸·Î super() ¸¦ È£ÃâÇÑ´Ù.
  • this ¿Í ¸¶Âù°¡Áö·Î ¼­ºê-Ŭ·¡½º »ý¼ºÀÚÀÇ ¸Ç ¾Õ¿¡ ¿Í¾ß ÇϹǷÎ, super ¿Í this ¸¦ °°ÀÌ »ç¿ëÇÒ ¼ö ¾ø´Ù.

1.7.6. final

  • C ¾ð¾îÀÇ const ¿Í ºñ½ÁÇÑ °³³äÀ¸·Î final ·Î ÁöÁ¤ÇÑ º¯¼öÀÇ °ªÀº ¹Ù²Ü ¼ö ¾ø´Ù.
  • final ·Î ÁöÁ¤ÇÑ ÂüÁ¶Çü º¯¼ö°¡ ´Ù¸¥ °´Ã¼¸¦ ÂüÁ¶Çϵµ·Ï ¹Ù²Ü ¼ö´Â ¾øÁö¸¸ °´Ã¼ ÀÚü´Â ¹Ù²Ù´Â °ÍÀÌ °¡´ÉÇÏ´Ù. ÀÌ°ÍÀº C ¾ð¾îÀÇ »ó¼öÇü Æ÷ÀÎÅÍ¿Í ºñ½ÁÇÑ °³³äÀÌ´Ù.
  • final ·Î ¼±¾ðµÈ Ŭ·¡½º´Â »ó¼ÓÀÌ ¾È µÈ´Ù.
  • final ¸Þ½îµå´Â ¿À¹ö¶óÀ̵ùÇÒ ¼ö ¾ø´Ù.

1.7.7. this

  • C++ ¾ð¾îÀÇ this ¿Í °°Àº °³³äÀÌ´Ù.
  • °´Ã¼ ÀÚ½ÅÀ» return ¹®À» ÅëÇؼ­ ¹ÝȯÇÒ ¶§ »ç¿ëÇÑ´Ù.
  • °´Ã¼ ÀÚ½ÅÀ» Àü´ÞÀÎÀÚ·Î º¸³¾ ¶§ »ç¿ëÇÑ´Ù.
  • Áö¿ª º¯¼öÀÇ À̸§ÀÌ class ÀÇ ¸â¹ö¿Í °°Àº À̸§À» °®°í ÀÖÀ» ¶§, ¼­·Î¸¦ ±¸º°ÇØÁÖ±â À§ÇØ »ç¿ëÇÑ´Ù.

1.7.8. Á¢±Ù Á¦ÇÑ

  • C++ ¿Í À¯»ç
  • public
  • private
  • protected

1.8. Ãß»ó Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º Ŭ·¡½º

1.8.1. abstract

  • Ãß»ó Ŭ·¡½º¸¦ ¸¸µé ¶§ »ç¿ëÇÑ´Ù.
    abstract class AbstractClass {
      public abstract setValue(int nValue);
    }
  • Ãß»ó Ŭ·¡½º´Â ¿Ï¼ºµÇÁö ¾ÊÀº Ŭ·¡½ºÀ̱⠶§¹®¿¡ Ãß»ó Ŭ·¡½º·Î´Â ÀνºÅϽº¸¦ ¸¸µé ¼ö ¾ø´Ù.
  • Ãß»ó ¸Þ½îµå°¡ ÇÑ °³¶óµµ Àִ Ŭ·¡½º´Â ¹Ýµå½Ã Ãß»ó Ŭ·¡½º°¡ µÇ¾î¾ß ÇÑ´Ù.
  • Ãß»ó ¸Þ½îµå´Â private, static, final, native, strictfp °¡ ¿Ã ¼ö ¾ø´Ù.
  • Á¤Àû ¸Þ½îµå´Â Ãß»ó Ŭ·¡½º ³»¿¡ Á¤ÀÇÇÒ ¼ö ¾ø´Ù.
  • Ãß»ó Ŭ·¡½º·Î´Â ´ÙÁß »ó¼ÓÀ» ÇÒ ¼ö ¾ø´Ù.

1.8.2. interface

  • ´ÙÁß »ó¼ÓÀÌ °¡´ÉÇÏ´Ù.
    interface A { }
    interface B { }
    class C implements A, B { }
  • interface Ŭ·¡½ºÀÇ Çʵå´Â public static final À̾î¾ß ÇÑ´Ù.
  • interface Ŭ·¡½ºÀÇ ¸Þ½îµå´Â public abstract À̾î¾ß ÇÑ´Ù.

1.8.3. implements

  • interface ·Î Á¤ÀÇÇÑ Å¬·¡½º¸¦ ±¸ÇöÇÒ ¶§ »ç¿ëÇÑ´Ù.
    interface A { }
    class B implements A { }

1.9. ÁßøµÈ Ŭ·¡½º

1.10. ÆÐÅ°Áö

  • ÆÐÅ°Áö´Â Àڹ٠Ŭ·¡½º¸¦ ¹èÆ÷ÇÒ ¶§, Ŭ·¡½º À̸§ °æ·Î¸¦ Á¦½ÃÇÏ¿©, Ÿ Ŭ·¡½º¿ÍÀÇ À̸§ Ãæµ¹À» ÇÇÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁØ´Ù.

1.10.1. package

  • ÇϳªÀÇ ÀÚ¹Ù ¼Ò½º ÆÄÀÏ¿¡´Â ÇϳªÀÇ package ¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.
  • package À̸§Àº º¸Åë ¼Ò¹®ÀÚ·Î ¾´´Ù.
  • package À̸§Àº °èÃþ ±¸Á¶¸¦ °¡Áú ¼ö ÀÖ°í, ÀÌ °èÃþ ±¸Á¶´Â Æú´õÀÇ ±¸Á¶¿Í °°¾Æ¾ß ÇÑ´Ù.
  • public Ŭ·¡½ºÀÇ À̸§Àº ¼Ò½º ÆÄÀÏ À̸§°ú °°¾Æ¾ß ÇÑ´Ù.
  • kr/pe/tactlee/Button.java
    package kr.pe.tactlee;

    public class Button {
    }
  • kr/pe/tactlee/special/Button.java
    package kr.pe.tactlee.special;

    public class Button {
    }
  • package ¹®ÀÌ ¾ø´Â ¼Ò½º ÆÄÀÏ¿¡ ¼±¾ðµÈ Ŭ·¡½º´Â µðÆúÆ® ÆÐÅ°Áö¿¡ ¼ÓÇÑ´Ù.

1.10.2. import

  • À§ÀÇ Button.java¸¦ ´Ù¸¥ ÀÚ¹Ù ¼Ò½º ÆÄÀÏ¿¡¼­ »ç¿ëÇϱâ À§Çؼ­´Â import ¸¦ »ç¿ëÇÑ´Ù.
    import kr.pe.tactlee.Button;
    ¶Ç´Â
    import kr.pe.tactlee.*;
  • import ´Â ½ÇÁ¦·Î ÇØ´ç Ŭ·¡½º¸¦ ·ÎµùÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ´ÜÁö Ŭ·¡½º À̸§ °æ·Î¸¦ »ý·«ÇØ ÁÖ´Â ¿ªÇÒÀ» ÇÑ´Ù. µû¶ó¼­ Ŭ·¡½º À̸§ °æ·Î¸¦ ¸ðµÎ »ç¿ëÇÑ´Ù¸é, import ¾øÀ̵µ Ŭ·¡½º »ç¿ëÀº °¡´ÉÇÏ´Ù.
    public class MyButton {
        kr.pe.tactlee.Button b = new kr.pe.tactlee.Button();
    }
  • import ¹®ÀÇ »ý·«
    • java.lang ÆÐÅ°ÁöÀÇ Å¬·¡½ºµéÀº import ¹® ¾øÀ̵µ »ç¿ëÀÌ °¡´ÉÇÏ´Ù.
    • ¿¹¸¦ µé¾î ÀÚÁÖ »ç¿ëÇÏ´Â println() ÀÌ ¼ÓÇØ ÀÖ´Â System Ŭ·¡½ºÀÇ ¿ø·¡ À̸§Àº java.lang.System ÀÌ´Ù.

1.11. ¹è¿­

  • ±âº»ÇüÀÇ ¹è¿­ °´Ã¼ ¼±¾ð°ú »ý¼º
    int[] intArray = new int[5];
  • ±âº»ÇüÀÇ ¹è¿­ °´Ã¼ ¼±¾ð°ú ÃʱâÈ­
    int[] intArray = { 10, 20, 30, 40, 50 };
  • ¹è¿­ÀÌ À妽ÌÀº C ¾ð¾î¿Í µ¿ÀÏ
  • ´ÙÂ÷¿ø ¹è¿­ÀÇ ¼±¾ð°ú »ý¼º
    int[][] intArray = new int[3][5];
  • ¼öÆÛ Å¬·¡½º·Î ¼±¾ðÇÑ ¹è¿­¿¡ ¼­ºê Ŭ·¡½ºÀÇ °´Ã¼¸¦ ³ÖÀ» ¼ö ÀÖ´Ù.
    class SuperClass { }
    class SubClassA extends SuperClass { }
    class SubClassB extends SuperClass { }
    SuperClass[] arraySuperClass = new SuperClass[3];
    arraySuperClass[0] = new SuperClass();
    arraySuperClass[1] = new SubClassA();
    arraySuperClass[2] = new SubClassB();
  • Ŭ·¡½º ¹è¿­ °´Ã¼´Â ÂüÁ¶Çü ¹è¿­ °´Ã¼·Î¼­ ÃʱⰪÀº null ÀÌ´Ù.
  • interface ·Î °´Ã¼¸¦ »ý¼ºÇÒ ¼ö´Â ¾øÁö¸¸ ¹è¿­À» ¸¸µé ¼ö´Â ÀÖ´Ù. ÀÌ ¹è¿­¿¡´Â interface ¸¦ ±¸ÇöÇÑ Å¬·¡½ºÀÇ °´Ã¼¸¦ ³ÖÀ» ¼ö ÀÖ´Ù.
    interface SuperInterface { }
    class SubClassA implements SuperInterface { }
    class SubClassB implements SuperInterface { }
    SuperInterface[] arraySuperInterface = new SuperInterface[2];
    arraySuperInterface[1] = new SubClassA();
    arraySuperInterface[1] = new SubClassB();
  • ¹è¿­ÀÇ º¹Á¦
    int[] intArray = { 1, 2, 3 };
    int[] intArrayClone = (int[])intArray.clone();
  • ¹è¿­°ú °ü·ÃµÈ Ŭ·¡½º
    • System.array()
    • Arrays Ŭ·¡½º

1.12. ¿¹¿Ü»óȲ

1.12.1. try-catch

1.12.2. throw

1.12.3. throws

1.13. ¸®Ç÷º¼Ç

1.14. ¾²·¹µå

1.15. ½ºÆ®¸²

1.16. Á÷·ÄÈ­

1.16.1. synchronized

1.17. ¸Þ¸ð¸® °ü¸®

1.18. assert

1.19. ±âŸ

1.19.1. static

1.19.2. strictfp

1.19.3. volatile


2. ÀÚ¹Ù Æ©Å丮¾ó

5. Upload

File nameSizeDate
 .. 2018-02-19
attachment:%C0%CC%BD%C5/%C0%DA%B9%D9%B3%EB%C6%AE:BavaLang.zipBavaLang.zip593.09 KB2005-11-16
Total 1 files


Replace original file
Rename if it already exist


ID
Password
Join
Alimony and bribes will engage a large share of your wealth.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2006-06-10 09:20:59
Processing time 0.0227 sec