· 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
To laugh at men of sense is the privilege of fools.


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.0191 sec