๊ด€๋ฆฌ ๋ฉ”๋‰ด

Binary Journey

[Java] ์ฝ”๋“œ๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ž๋ฐ” ์ฒซ ๊ฑธ์Œ (1-3) ๋ณธ๋ฌธ

Java | Spring

[Java] ์ฝ”๋“œ๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ž๋ฐ” ์ฒซ ๊ฑธ์Œ (1-3)

binaryJournalist 2024. 12. 19. 23:41
๋ฐ˜์‘ํ˜•

๐Ÿ’ก inflearn ๊น€์˜ํ•œ์˜ ์‹ค์ „์ž๋ฐ” ๋กœ๋“œ๋งต์„ ๋”ฐ๋ผ ํ•™์Šตํ•˜๊ณ  ๋ณต์Šตํ•œ ๋‚ด์šฉ์„ ์ ์—ˆ์Šต๋‹ˆ๋‹ค.

Hello World

๐Ÿ’ก ํ”„๋กœ๊ทธ๋žจ ์–ธ์–ด๋Š” ์†์œผ๋กœ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰

public class HelloJava { // HelloJava ํด๋ž˜์Šค์˜ ๋ฒ”์œ„ ์‹œ์ž‘  
    public static void main(String[] args) { // main ๋ฉ”์„œ๋“œ์˜ ๋ฒ”์œ„ ์‹œ์ž‘  
        System.out.println("hello java");  
    } // main ๋ฉ”์„œ๋“œ์˜ ๋ฒ”์œ„ ๋  
} // HelloJava ํด๋ž˜์Šค์˜ ๋ฒ”์œ„ ๋
  • ์ž๋ฐ” ์–ธ์–ด๋Š” ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•œ๋‹ค.

 

public class HelloJava

  • ํŒŒ์ผ๋ช…๊ณผ ํด๋ž˜์Šค ์ด๋ฆ„์ด ๊ฐ™์•„์•ผ ํ•œ๋‹ค.
  • {} ๋ธ”๋ก์„ ์‚ฌ์šฉํ•ด์„œ ํด๋ž˜์Šค์˜ ์‹œ์ž‘๊ณผ ๋์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

 

public static void main(String[] args)

  • main ๋ฉ”์„œ๋“œ ํ•จ์ˆ˜
  • ์ž๋ฐ”๋Š” main ๋ฉ”์„œ๋“œ๋ฅผ ์ฐพ์•„ ํ”„๋กœ๊ทธ๋žจ์„ ์‹œ์ž‘ํ•œ๋‹ค.
  • ํ”„๋กœ๊ทธ๋žจ์˜ ์‹œ์ž‘์ ์ด๋‹ค.
  • {} ๋ธ”๋ก์„ ์‚ฌ์šฉํ•ด์„œ ํด๋ž˜์Šค์˜ ์‹œ์ž‘๊ณผ ๋์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

 

System.out.println("hello java");

  • ๊ฐ’์„ ์ฝ˜์†”์— ์ถœ๋ ฅํ•œ๋‹ค.
  • ๋ฌธ์ž์—ด์€ "" ์Œ๋”ฐ์˜ดํ‘œ๋กœ ๊ฐ์‹ผ๋‹ค.
  • ๋ช…๋ น์–ด์˜ ๋์€ ; ์œผ๋กœ ๋๋‚ธ๋‹ค.

 

public class HelloJava2 {  
    public static void main(String[] args) {  
        System.out.println("hello java1");  
        System.out.println("hello java2");  
        System.out.println("hello java3");  
    }  
}
  • main์œผ๋กœ๋ถ€ํ„ฐ ์œ„์—์„œ ์•„๋ž˜๋กœ ์ง„ํ–‰ํ•œ๋‹ค.

 

์ฃผ์„ (Comment)

public class CommentJava {  
    // psvm  
    public static void main(String[] args) {  
        // sout  
        System.out.println("hello java1"); // hello java1์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.  
//        System.out.println("hello java2");  

        /*
        System.out.println("hello java3");
        System.out.println("hello java4");
         */
    }
}

 

//

  • ํ•œ์ค„ ์ฃผ์„

/* */

  • ์—ฌ๋Ÿฌ ์ค„ ์ฃผ์„

 

์ž๋ฐ”๋ž€?

์ž๋ฐ” ํ‘œ์ค€ ์ŠคํŽ™

  • ํ‘œ์ค€ ์ŠคํŽ™
    • ์„ค๊ณ„๋„์ด๋ฉด์„œ ๋ฌธ์„œ
    • ํ‘œ์ค€ ์ŠคํŽ™์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์—ฌ๋Ÿฌ ํšŒ์‚ฌ์—์„œ ์‹ค์ œ ์ž‘๋™ํ•˜๋Š” ์ž๋ฐ”๋ฅผ ๋งŒ๋“ ๋‹ค.
    • ์ž๋ฐ” ํ‘œ์ค€ ์ŠคํŽ™์€ ์ž๋ฐ” ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”„๋กœ์„ธ์Šค(JCP)๋ฅผ ํ†ตํ•ด ๊ด€๋ฆฌ๋œ๋‹ค.
  • ๊ตฌํ˜„
    • ์ตœ์ ํ™” ๋“ฑ ๊ฐ ํšŒ์‚ฌ๋งˆ๋‹ค ๋‹ค๋ฅด๋‹ค.
    • ์˜ˆ) Amazon Corretto๋Š” AWS์— ์ตœ์ ํ™”๋˜์–ด ์žˆ๋‹ค.
    • whichjdk.com/ko/

์ปดํŒŒ์ผ๊ณผ ์‹คํ–‰

  • ์ปดํŒŒ์ผ
    • ์ž๋ฐ” ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผ ํ•œ๋‹ค.
    • ์ž๋ฐ”๊ฐ€ ์ œ๊ณตํ•˜๋Š” javac๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•œ๋‹ค.
    • .java -> .class ํŒŒ์ผ์ด ์ƒ์„ฑ๋œ๋‹ค.
    • ์ž๋ฐ” ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋ฐ”์ดํŠธ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•˜๋ฉฐ ์ž๋ฐ” ๊ฐ€์ƒ ๋จธ์‹ ์—์„œ ๋” ๋น ๋ฅด๊ฒŒ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๊ฒŒ ์ตœ์ ํ™”ํ•˜๊ณ  ๋ฌธ๋ฒ• ์˜ค๋ฅ˜๋„ ๊ฒ€์ถœํ•œ๋‹ค.
  • ์‹คํ–‰
    • ์ž๋ฐ”๊ฐ€ ์ œ๊ณตํ•˜๋Š” java๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•œ๋‹ค.
    • ์ž๋ฐ” ๊ฐ€์ƒ ๋จธ์‹ (JVM)์ด ์‹คํ–‰๋˜๋ฉด์„œ ํ”„๋กœ๊ทธ๋žจ์ด ์ž‘๋™ํ•œ๋‹ค.

 

intellJ๋ฅผ ํ†ตํ•œ ์ž๋ฐ” ์ปดํŒŒ์ผ, ์‹คํ–‰ ๊ณผ์ •

  • ์ปดํŒŒ์ผ
    • ์ž๋ฐ” ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผํ•˜๋ ค๋ฉด javac๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ง์ ‘ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์ธํ…”๋ฆฌ์ œ์ด๋Š” ์ž๋ฐ” ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ์ด ๊ณผ์ •์„ ์ž๋™์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์ค€๋‹ค.
    • ์ธํ…”๋ฆฌ์ œ์ด ํ™”๋ฉด์—์„œ ํ”„๋กœ์ ํŠธ ๋‚ด outํด๋”์— ๊ฐ€๋ณด๋ฉด ์ปดํŒŒ์ผ๋œ .classํŒŒ์ผ์ด ์žˆ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.
  • ์‹คํ–‰
    • ์ž๋ฐ”๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด java๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ์ด ๋•Œ ์ปดํŒŒ์ผ๋œ .classํŒŒ์ผ์„ ์ง€์ •ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.
    • java Hello (ํ™•์žฅ์ž ์ œ์™ธ)
  • ์ปดํŒŒ์ผ ์‹œ ํ•„์š” ์—†๋Š” ์š”์†Œ(์ฃผ์„ ๋“ฑ)์„ ์—†์• ๊ณ  ์ตœ์ ํ™”ํ•˜์—ฌ ์ง„ํ–‰ํ•œ๋‹ค.
  • ์ธํ…”๋ฆฌ์ œ์ด์—์„œ ์ž๋ฐ” ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์ปดํŒŒ์ผ๊ณผ ์‹คํ–‰์„ ๋ชจ๋‘ ํ•œ๋ฒˆ์— ์ฒ˜๋ฆฌํ•œ๋‹ค.

 

์ž๋ฐ”์™€ ์šด์˜์ฒด์ œ ๋…๋ฆฝ์„ฑ

  • ์ผ๋ฐ˜์ ์ธ ํ”„๋กœ๊ทธ๋žจ์€ ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๋‹ค.
  • ๋‹ค๋ฅธ OS์™€ ํ˜ธํ™˜๋˜์ง€ ์•Š๋Š”๋‹ค!

  • ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์€ ์ž๋ฐ”๊ฐ€ ์„ค์น˜๋œ ๋ชจ๋“  OS์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋‹ค.
  • OSํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๋Š” ์ž๋ฐ”๊ฐ€ ํ•ด๊ฒฐํ•ด์ค€๋‹ค.
  • ๋ณธ์ธ์˜ OS๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.

 

์ž๋ฐ” ๊ฐœ๋ฐœ๊ณผ ์šด์˜ ํ™˜๊ฒฝ

  • ์ž๋ฐ”์˜ ์šด์˜์ฒด์ œ ๋…๋ฆฝ์„ฑ ๋•๋ถ„์— ๊ฐ๊ฐ์˜ ํ™˜๊ฒฝ์— ๋งž์ถฐ ์ž๋ฐ”๋ฅผ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

 


๋ณ€์ˆ˜

๋ณ€์ˆ˜ ์‹œ์ž‘

package variable;  

public class Var1 {  
    public static void main(String[] args) {  
        System.out.println(10);  
        System.out.println(10);  
        System.out.println(10);  
    }  
}

 

  • ํŒจํ‚ค์ง€ (package)
    • ์ž๋ฐ” ํŒŒ์ผ์„ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•œ ํด๋”
    • ์ž๋ฐ” ํŒŒ์ผ์ด ์œ„์น˜ํ•˜๋Š” ํŒจํ‚ค์ง€์™€ package variable ์„ ์–ธ ์œ„์น˜๊ฐ€ ๊ฐ™์•„์•ผ ํ•œ๋‹ค.
package variable;  

public class Var2 {  
    public static void main(String[] args) {  
        int a; // ๋ณ€์ˆ˜ ์„ ์–ธ  
        a = 10; // ๋ณ€์ˆ˜ ์ดˆ๊ธฐํ™”  
        System.out.println(a);  
        System.out.println(a);  
        System.out.println(a);  

        a = 20; // ๋ณ€์ˆ˜ ์ดˆ๊ธฐํ™”  
        System.out.println(a);  
        System.out.println(a);  
        System.out.println(a);  
    }  
}

 

  •  ๋ณ€์ˆ˜
    • ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๊ทธ๋ฆ‡
    • ์–ด๋”˜๊ฐ€์— ๊ฐ’์„ ๋ณด๊ด€ํ•ด๋‘๊ณ  ํ•„์š”ํ•  ๋•Œ ๊ฐ’์„ ๊บผ๋‚ด์„œ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ์ €์žฅ์†Œ
    • ๋ณ€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’

 

a = 10

  • 10์„ a ์— ์ €์žฅํ•œ๋‹ค.
  • = ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” ๊ฐ’์„ ์™ผ์ชฝ์— ์ €์žฅํ•œ๋‹ค.
  • ๋ณ€์ˆ˜์— ๊ฐ’์„ ๋Œ€์ž…ํ•œ๋‹ค.
  • ๋ณ€์ˆ˜ ์ดˆ๊ธฐํ™”

 

System.out.println(a);

  • a ์ž๋ฐ”๋Š” ์‹คํ–‰ ์‹œ์ ์— ๋ณ€์ˆ˜์— ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๊ฐ’์„ ์ฝ์–ด ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋ณ€์ˆ˜์˜ ๊ฐ’์€ ๋ฐ˜๋ณตํ•ด์„œ ์ฝ์„ ์ˆ˜ ์žˆ๋‹ค.

 

a = 20;

  • ๋ณ€์ˆ˜์˜ ๊ฐ’์€ ๋ณ€๊ฒฝ๊ฐ€๋Šฅํ•˜๋‹ค.

 

๋ณ€์ˆ˜ ๊ฐ’ ๋ณ€๊ฒฝ

package variable;  

public class Var3 {  
    public static void main(String[] args) {  
        int a; // ๋ณ€์ˆ˜ ์„ ์–ธ  
        a = 10; // ๋ณ€์ˆ˜ ์ดˆ๊ธฐํ™” a(50)
        System.out.println(a);  

        a = 50; // ๋ณ€์ˆ˜ ๊ฐ’ ๋ณ€๊ฒฝ a(10 -> 50)
        System.out.println(a);  
    }  
}
  • ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ฉด ๋ณ€์ˆ˜์— ๋“ค์–ด์žˆ๋˜ ๊ธฐ์กด ๊ฐ’์€ ์‚ญ์ œ๋œ๋‹ค.

๋ณ€์ˆ˜ ์„ ์–ธ๊ณผ ์ดˆ๊ธฐํ™”

๋ณ€์ˆ˜ ์„ ์–ธ

๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉด ์ปดํ“จํ„ฐ์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•ด์„œ ๊ทธ๊ณณ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์„ ํ†ตํ•ด์„œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐ„์„ ๋งŒ๋“ค๊ณ  ๊ทธ๊ณณ์— ์ด๋ฆ„์„ ๋ถ€์—ฌํ•œ๋‹ค.

package variable;  

public class Var4 {  
    public static void main(String[] args) {  
        int a;  
        int b;  
        int c,d;  
    }  
}

 

๋ณ€์ˆ˜ ์ดˆ๊ธฐํ™”

๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ  ์„ ์–ธํ•œ ๋ณ€์ˆ˜์— ์ฒ˜์Œ์œผ๋กœ ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ์„ ์ดˆ๊ธฐํ™”๋ผ๊ณ  ํ•œ๋‹ค.

package variable;  

public class Var5 {  
    public static void main(String[] args) {  
        // 1. ๋ณ€์ˆ˜ ์„ ์–ธ, ์ดˆ๊ธฐํ™” ๋”ฐ๋กœ  
        int a;  
         a = 1;  
        System.out.println(a);  

        // 2. ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉด์„œ ๋™์‹œ์— ์ดˆ๊ธฐํ™”  
        int b = 2;  
        System.out.println(b);  

        // 3. ์—ฌ๋Ÿฌ ๋ณ€์ˆ˜๋ฅผ ํ•œ ๋ฒˆ์— ์„ ์–ธํ•˜๋ฉด์„œ ์ดˆ๊ธฐํ™”  
        int c = 3, d = 4;  
        System.out.println(c);  
        System.out.println(d);  
    }  
}

 

๋ณ€์ˆ˜๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด?

package variable;  

public class Var6 {  
    public static void main(String[] args) {  
        int a;  
        System.out.println(a);  
    }  
}

java: variable a might not have been initialized

 

  • ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค
  • ์ปดํ“จํ„ฐ์—์„œ ๋ฉ”๋ชจ๋ฆฌ๋Š” ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๊ณต๊ฐ„์ด๋‹ค. ๊ทธ๋ž˜์„œ ์–ด๋– ํ•œ ๊ฐ’๋“ค์ด ๊ณ„์† ์ €์žฅ๋œ๋‹ค. ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ์ƒ์˜ ์–ด๋–ค ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•˜๊ณ  ์‚ฌ์šฉํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๊ทธ ๊ณต๊ฐ„์— ๊ธฐ์กด์— ์–ด๋–ค ๊ฐ’์ด ์žˆ์—ˆ๋Š”์ง€ ์•„๋ฌด๋„ ๋ชจ๋ฅธ๋‹ค. ๋”ฐ๋ผ์„œ ์ดˆ๊ธฐํ™”๋ฅผ ํ•˜์ง€ ์•Š์œผ๋ฉด ์ด์ƒํ•œ ๊ฐ’์ด ์ถœ๋ ฅ๋œ๋‹ค. ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ์˜ˆ๋ฐฉํ•˜๊ธฐ ์œ„ํ•ด ๋ณ€์ˆ˜๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๋„๋ก ๊ฐ•์ œํ•œ๋‹ค.

๐Ÿ’ก ์ง€๊ธˆ ํ•™์Šตํ•˜๋Š” ๋ณ€์ˆ˜๋Š” ์ง€์—ญ ๋ณ€์ˆ˜(Local Variable)๋กœ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ดˆ๊ธฐํ™”ํ•ด์ค˜์•ผ ํ•œ๋‹ค.
๋‚˜์ค‘์— ๋ฐฐ์šธ ํด๋ž˜์Šค ๋ณ€์ˆ˜์™€ ์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜๋Š” ์ž๋ฐ”๊ฐ€ ์ž๋™์œผ๋กœ ์ดˆ๊ธฐํ™”๋ฅผ ์ง„ํ–‰ํ•ด ์ค€๋‹ค.

๐Ÿ’ก ์ปดํŒŒ์ผ ์—๋Ÿฌ๋Š” ์ž๋ฐ” ๋ฌธ๋ฒ•์— ๋งž์ง€ ์•Š์•˜์„ ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์—๋Ÿฌ์ด๋‹ค.
์ปดํŒŒ์ผ ์—๋Ÿฌ๋Š” ์˜ค๋ฅ˜๋ฅผ ๋นจ๋ฆฌ, ๊ทธ๋ฆฌ๊ณ  ๋ช…ํ™•ํ•˜๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ข‹์€ ์—๋Ÿฌ์ด๋‹ค.
๋น ๋ฅด๊ฒŒ ๋ฒ„๊ทธ๋ฅผ ๊ณ ์น  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ’ก ์—๋Ÿฌ๋ฅผ ํ™•์ธํ•˜๊ณ  ๋‚˜๋ฉด ์ฃผ์„ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜์ž.
๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋‹ค๋ฅธ ์˜ˆ์ œ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ๋„ ์ด ๋ถ€๋ถ„์— ์ปดํŒŒ์ผ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋ณ€์ˆ˜ ํƒ€์ž…

  • ๋ณ€์ˆ˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋Š” ์ข…๋ฅ˜์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ํ˜•์‹์ด ์กด์žฌํ•œ๋‹ค.
package variable;  

public class Var7 {  
    public static void main(String[] args) {  
        int a = 100; // ์ •์ˆ˜  
        double b = 10.5; // ์‹ค์ˆ˜  
        boolean c = true; // boolean true or false  
        char d = 'A'; // ๋ฌธ์ž ํ•˜๋‚˜  
        String e = "Hello Java"; // ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ํŠน๋ณ„ํ•œ ํƒ€์ž…  

        System.out.println(a);  
        System.out.println(b);  
        System.out.println(c);  
        System.out.println(d);  
        System.out.println(e);  
    }  
}

 

  • int
    • ์ •์ˆ˜
  • double
    • ์‹ค์ˆ˜
  • boolean
    • ๋ถˆ๋ฆฌ์–ธ ํƒ€์ž…
    • true or false
  • char
    • ๋ฌธ์ž ํ•˜๋‚˜
    • ' ์ž‘์€ ๋”ฐ์˜ดํ‘œ๋กœ ๊ฐ์‹ธ ์‚ฌ์šฉ
  • String
    • ๋ฌธ์ž์—ด
    • " ์Œ๋”ฐ์˜ดํ‘œ๋กœ ๊ฐ์‹ธ ์‚ฌ์šฉ
  • ๊ฐ ๋ณ€์ˆ˜๋Š” ์ง€์ •ํ•œ ํƒ€์ž…์— ๋งž๋Š” ๊ฐ’์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ์•ˆ ๊ทธ๋Ÿผ ์ปดํŒŒ์ผ ์˜ค๋ฅ˜ ๋ฐœ์ƒ.
  • ๋ณ€์ˆ˜์˜ ๊ฐ’์€ ๋ณ€ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋ฆฌํ„ฐ๋Ÿด์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ž…๋ ฅํ•œ ๊ณ ์ •๊ฐ’์ด๋‹ค. ๋”ฐ๋ผ์„œ ๋ฆฌํ„ฐ๋Ÿด ์ž์ฒด๋Š” ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค.

 

๋ฆฌํ„ฐ๋Ÿด

๋ฆฌํ„ฐ๋Ÿด
์ฝ”๋“œ์—์„œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ณ€์ˆ˜์— ์ดˆ๊ธฐํ™”ํ•œ ๊ฐ’, ์ง์ ‘ ์ ์€ ๊ฐ’, ๊ณ ์ •๋œ ๊ฐ’์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์šฉ์–ด๋กœ์„ ๋ฆฌํ„ฐ๋Ÿด(literal)์ด๋ผ๊ณ  ํ•œ๋‹ค.

int a = 100; // ์ •์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด
double b = 10.5; // ์‹ค์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด 
boolean c = true; // boolean ๋ฆฌํ„ฐ๋Ÿด  
char d = 'A'; // ๋ฌธ์ž ํ•˜๋‚˜ ๋ฆฌํ„ฐ๋Ÿด
String e = "Hello Java"; // ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ฐ๋Ÿด 

 

์ˆซ์ž ํƒ€์ž…

package variable;  

public class Var8 {  
    public static void main(String[] args) {  
        // ์ •์ˆ˜ (๋†’์„์ˆ˜๋ก ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋งŽ์ด ์ฐจ์ง€ํ•œ๋‹ค.)  
        byte b = 127; // -128 ~ +127  
        short s = 32767; // -32,768 ~ +32,767  
        int i = 2_147_483_647; // -2,147,483,648 ~ +2,147,483,647 (์•ฝ 21์–ต)  
        long l = 9_223_372_036_854_775_807L; // -9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,808  
        // ์‹ค์ˆ˜  
        float f = 3.14f;  
        double d = 3.14;  
    }  
}
  • ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ž‘๊ฒŒ ์‚ฌ์šฉํ•˜๋ฉด ์ž‘์€ ์ˆซ์ž๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ณ , ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋ฉด ํฐ ์ˆซ์ž๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉด ํ‘œํ˜„ ๋ฒ”์œ„์— ๋”ฐ๋ผ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•œ๋‹ค. ํ•„์š”์— ๋งž๋„๋ก ๋‹ค์–‘ํ•œ ํƒ€์ž…์„ ์ œ๊ณตํ•œ๋‹ค.
    • byte: 1byte, 2^8
    • short: 2byte, 2^16
    • int: 4byte, 2^32
    • long: 8byte, 2^64
    • float: 4byte, 2^32
    • double: 8byte, 2^64
    • boolean: 1byte
    • char: 1byte
    • String: ๋ฌธ์ž์˜ ๊ธธ์ด์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ๋‹ฌ๋ผ์ง

 

๋ฆฌํ„ฐ๋Ÿด ํƒ€์ž… ์ง€์ •

  • ์ •์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์€ int๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
    • int๋ฒ”์œ„๋ฅผ ๋„˜๊ธด๋‹ค๋ฉด ๋ฆฌํ„ฐ๋Ÿด์„ long์œผ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ ํ•œ๋‹ค.
    • long์€ ๋’ค์— ๋Œ€๋ฌธ์ž L์„ ๋ถ™์ด๋Š” ๊ฒƒ์ด ๊ด€๋ก€์ด๋‹ค. (์†Œ๋ฌธ์ž์˜ ๊ฒฝ์šฐ ์ˆซ์ž์™€ ํ—ท๊ฐˆ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ)
  • ์‹ค์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์€ double์„ ๊ธฐ๋ณธ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
    • floatํ˜•์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด f๋ฅผ ๋’ค์— ๋ถ™์—ฌ์•ผ ํ•œ๋‹ค.
    • ์†Œ์ˆ˜์ ์ด ๊ต‰์žฅํžˆ ๊ธธ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์‹ค float๋Š” ์ž˜ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.

 

๋ณ€์ˆ˜ ํƒ€์ž… ์ •๋ฆฌ

  • ์•„๋ž˜ ํƒ€์ž…์€ ์‹ค๋ฌด์—์„œ ๊ฑฐ์˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
    • byte
      • ํ‘œํ˜„์˜ ๊ธธ์ด๊ฐ€ ๋„ˆ๋ฌด ์ž‘๋‹ค.
      • ์ž๋ฐ”์˜ ๊ฒฝ์˜ ๊ธฐ๋ณธ 4byte(int)๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ณ„์‚ฐํ•˜๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ๋‹ค.
      • ํŒŒ์ผ์„ ๋ฐ”์ดํŠธ ๋‹จ์œ„๋กœ ๋‹ค๋ฃจ๊ธฐ ๋•Œ๋ฌธ์— ํŒŒ์ผ ์ „์†ก, ํŒŒ์ผ ๋ณต์‚ฌ ๋“ฑ์— ์ฃผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค.
    • short
      • ํ‘œํ˜„์˜ ๊ธธ์ด๊ฐ€ ๋„ˆ๋ฌด ์ž‘๋‹ค.
    • float
      • ํ‘œํ˜„์˜ ๊ธธ์ด๊ฐ€ ์ž‘๊ณ  ์ •๋ฐ€๋„๊ฐ€ ๋‚ฎ๋‹ค.
      • ์†Œ์ˆ˜์ ์„ ํ‘œํ˜„ํ•˜๊ธฐ์—” ํ‘œํ˜„์˜ ๊ธธ์ด๊ฐ€ ๋„ˆ๋ฌด ์ž‘๋‹ค.
      • double์“ฐ์„ธ์š”.
    • char
      • ๋ฌธ์ž ํ•˜๋‚˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ์ผ์€ ๋งŽ์ด ์—†๋‹ค.
      • String์œผ๋กœ๋„ ๋ฌธ์ž ํ•˜๋‚˜๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๐Ÿ’ก ๋ฉ”๋ชจ๋ฆฌ ์šฉ๋Ÿ‰์€ ๋งค์šฐ ์ €๋ ดํ•˜๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์šฉ๋Ÿ‰์„ ์ ˆ์•ฝํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๊ฐœ๋ฐœ ์†๋„๋‚˜ ํšจ์œจ์— ์ดˆ์ ์„ ๋งž์ถ”๋Š” ๊ฒƒ์ด ๋” ํšจ์œจ์ ์ด๋‹ค.

 

์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ํƒ€์ž…

  • ์ •์ˆ˜
    • int
    • long
  • ์‹ค์ˆ˜
    • double
  • ๋ถˆ๋ฆฌ์–ธํ˜•
    • boolean
  • ๋ฌธ์ž
    • String

 

๋ณ€์ˆ˜ ๋ช…๋ช… ๊ทœ์น™

  • ์ž๋ฐ”์—์„œ ๋ณ€์ˆ˜ ์ž‘๋ช… ๊ทœ์น™๊ณผ ๊ด€๋ก€๊ฐ€ ์žˆ๋‹ค.
    • ๊ทœ์น™์„ ์•ˆ ์ง€ํ‚ค๋ฉด ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.
    • ๊ด€๋ก€๋Š” ํ•„์ˆ˜๋Š” ์•„๋‹ˆ์ง€๋งŒ ์ „์„ธ๊ณ„ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•ด๋‹น ๊ด€๋ก€๋ฅผ ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์‹ค์ƒ ๊ทœ์น™์ด๋‹ค.

๊ทœ์น™

  • ๋ณ€์ˆ˜ ์ด๋ฆ„์€ ์ˆซ์ž๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†๋‹ค.
  • ์ด๋ฆ„์— ๊ณต๋ฐฑ์ด ๋“ค์–ด๊ฐˆ ์ˆ˜๋Š” ์—†๋‹ค.
  • ์˜ˆ์•ฝ์–ด๋ฅผ ๋ณ€์ˆ˜๋กœ ์‚ฌ์šฉํ•  ์ˆ˜๋Š” ์—†๋‹ค.
  • ๋ณ€์ˆ˜ ์ด๋ฆ„์—๋Š” ์˜๋ฌธ์ž(A-Z,a-z), ์ˆซ์ž(0-9), ๋‹ฌ๋Ÿฌ๊ธฐํ˜ธ($), ๋˜๋Š” ๋ฐ‘์ค„(_)๋งŒ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค.

๊ด€๋ก€

  • camelCase (๋‚™ํƒ€ํ‘œ๊ธฐ๋ฒ•)
    • ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์€ ์†Œ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ด๋‹ค.
    • ์—ฌ๋Ÿฌ ๋‹จ์–ด๋กœ ์ด๋ค„์ง„ ๋ณ€์ˆ˜์˜ ๊ฒฝ์šฐ ์ฒซ๋‹จ์–ด๋Š” ์†Œ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๊ณ  ๊ทธ ๋‹ค์Œ์œผ๋กœ ์˜ค๋Š” ๋‹จ์–ด๋Š” ์ฒซ๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
    • orderDetail, myAccount

 

๐Ÿ’ก ๋‚™ํƒ€ํ‘œ๊ธฐ๋ฒ•, Camel Case
๋‚™ํƒ€ํ‘œ๊ธฐ๋ฒ•์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ๋ณ€์ˆ˜, ํ•จ์ˆ˜, ํด๋ž˜์Šค ๋“ฑ์˜ ์ด๋ฆ„์„ ์ง€์„๋•Œ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ํ‘œ๊ธฐ๋ฒ• ์ค‘ ํ•˜๋‚˜์ด๋‹ค. ์ด ํ‘œ๊ธฐ๋ฒ•์˜ ์ด๋ฆ„์€ ์ด๋ฆ„์ด ์—ฌ๋Ÿฌ ๋‹จ์–ด๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์„ ๋•Œ ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๊ฐ€ ๋Œ€๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•˜๊ณ , ์ด ๋Œ€๋ฌธ์ž๋“ค์ด ๋‚™ํƒ€์˜ ๋“ฑ๋ด‰์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ๊ฒƒ์—์„œ ์œ ๋ž˜ํ–ˆ๋‹ค. ๋‚™ํƒ€ํ‘œ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋ฆ„์— ๊ณต๋ฐฑ์„ ๋„ฃ์ง€ ์•Š๊ณ ๋„ ์—ฌ๋Ÿฌ ๋‹จ์–ด๋ฅผ ์‰ฝ๊ฒŒ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด์ค€๋‹ค. ๋˜ํ•œ, ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ๋Š”์ด๋ฆ„์— ๊ณต๋ฐฑ์„ ํฌํ•จํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์—, ๋‚™ํƒ€ํ‘œ๊ธฐ๋ฒ•์€ ์ด๋Ÿฐ ์ œํ•œ์„ ์šฐํšŒํ•˜๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ด๋‹ค.

 

์ž๋ฐ” ์–ธ์–ด์˜ ๊ด€๋ก€

ํด๋ž˜์Šค๋Š” ๋Œ€๋ฌธ์ž, ๋‚˜๋จธ์ง€๋Š” ์†Œ๋ฌธ์ž

  • ์ž๋ฐ”์—์„œ ํด๋ž˜์Šค ์ด๋ฆ„์˜ ์ฒซ ๊ธ€์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
    • Pascal Case
  • ๋‚˜๋จธ์ง€๋Š” ๋ชจ๋‘ ์ฒซ๊ธ€์ž๋ฅผ ์†Œ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
    • camel Case
  • ์˜ˆ์™ธ
    • ์ƒ์ˆ˜๋Š” ๋ชจ๋‘ ๋Œ€๋ฌธ์ž๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์–ธ๋”๋ฐ”๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค
      • SCREAMING_SNAKE_CASE
    • ํŒจํ‚ค์ง€๋Š” ๋ชจ๋‘ ์†Œ๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

๐Ÿ’ก ๋ณ€์ˆ˜ ์ด๋ฆ„์€ ์˜๋ฏธ์žˆ๊ณ  ๊ทธ ์˜๋„๋ฅผ ๋ช…ํ™•ํ•˜๊ฒŒ ์„ค๋ช…ํ•ด์•ผ ํ•œ๋‹ค.

 

๋ฌธ์ œ์™€ ํ’€์ด

๐Ÿ’ก ๋ฐฑ๋ฌธ์ด๋ถˆ์—ฌ์ผํƒ€!

 

๋ฌธ์ œ1

๋‹ค์Œ ์ฝ”๋“œ์—์„œ ๋ฐ˜๋ณตํ•ด์„œ ๋‚˜์˜ค๋Š” ์ˆซ์ž 4, 3์„ ๋‹ค๋ฅธ ์ˆซ์ž๋กœ ํ•œ๋ฒˆ์— ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋„๋ก num1, num2๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๋ณ€๊ฒฝํ•ด๋ณด์„ธ์š”.

package variable.ex;  

public class VarEx1Question {  
    public static void main(String[] args) {  
        System.out.println(4 + 3);  
        System.out.println(4 - 3);  
        System.out.println(4 * 3);  
    }  
}

 

VarEx1

package variable.ex;  

public class VarEx1 {  
    public static void main(String[] args) {  
        int num1 = 4;  
        int num2 = 3;  
        System.out.println(num1 + num2);  
        System.out.println(num1 - num2);  
        System.out.println(num1 * num2);  
    }  
}

 

๋ฌธ์ œ2

๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.
ํด๋ž˜์Šค ์ด๋ฆ„์€ VarEx2๋ผ๊ณ  ์ ์–ด์ฃผ์„ธ์š”.

  1. ๋ณ€์ˆ˜ num1์„ ์„ ์–ธํ•˜๊ณ , ์ด์— 10์„ ํ• ๋‹นํ•˜์„ธ์š”.
  2. ๋ณ€์ˆ˜ num2๋ฅผ ์„ ์–ธํ•˜๊ณ , ์ด์— 20์„ ํ• ๋‹นํ•˜์„ธ์š”.
  3. ๋‘ ๋ณ€์ˆ˜์˜ ํ•ฉ์„ ๊ตฌํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜ sum์— ์ €์žฅํ•˜์„ธ์š”.
  4. sum๋ณ€์ˆ˜์˜ ๊ฐ’์„ ์ถœ๋ ฅํ•˜์„ธ์š”.

VarEx2

package variable.ex;  

public class VarEx2 {  
    public static void main(String[] args) {  
        int num1 = 10;  
        int num2 = 20;  
        int sum = num1 + num2;  
        System.out.println(sum);  
    }  
}

 

๋ฌธ์ œ3 - long, boolean ๋ฐ์ดํ„ฐ ํƒ€์ž…

ํด๋ž˜์Šค ์ด๋ฆ„: VarEx3
longํƒ€์ž…์˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ , ๊ทธ ๋ณ€์ˆ˜๋ฅผ 10000000000(๋ฐฑ์–ต)์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•œ ํ›„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.
booleanํƒ€์ž…์˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ , ๊ทธ ๋ณ€์ˆ˜๋ฅผ true๋กœ ์ดˆ๊ธฐํ™”ํ•œ ํ›„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.

 

VarEx3

package variable.ex;  

public class VarEx3 {  
    public static void main(String[] args) {  
        long longVar = 10_000_000_000L;  
        System.out.println(longVar);  

        boolean boolVar = true;  
        System.out.println(boolVar);  
    }  
}
๋ฐ˜์‘ํ˜•