CodeGym/์ž๋ฐ” ์ฝ”์Šค/All lectures for KO purposes/Java ๊ฐ์ฒด์˜ ๋‰˜์•™์Šค

Java ๊ฐ์ฒด์˜ ๋‰˜์•™์Šค

์‚ฌ์šฉ ๊ฐ€๋Šฅ

1. ์†์„ฑ: getter ๋ฐ setter

์ˆ˜์‹ญ ๋ช…์˜ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๋™์‹œ์— ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ•  ๋•Œ ํด๋ž˜์Šค ํ•„๋“œ์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ์ž์ฃผ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

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

์ด๋Ÿฌํ•œ ์ƒํ™ฉ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด Java์—์„œ ๋ชจ๋“  ํด๋ž˜์Šค ํ•„๋“œ๋ฅผ ๋น„๊ณต๊ฐœ๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค . ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ๋งŒ ํด๋ž˜์Šค์˜ ๋ณ€์ˆ˜๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ๋Š” ๋ณ€์ˆ˜์— ์ง์ ‘ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ํด๋ž˜์Šค๊ฐ€ ํด๋ž˜์Šค์˜ ๊ฐœ์ฒด ๋‚ด๋ถ€์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด ํด๋ž˜์Šค์— get ๋ฉ”์„œ๋“œ์™€ set ๋ฉ”์„œ๋“œ๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ๋ฉ”์„œ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ:

์•”ํ˜ธ ๋ฉ”๋ชจ
class Person
{
   private String name;

   public Person(String name)
   {
      this.name = name;
   }

   public String getName()
   {
      return name;
   }

   public void setName(String name)
   {
      this.name = name;
   }
}


private์ด๋ฆ„ ํ•„๋“œ



์ƒ์„ฑ์ž๋ฅผ ํ†ตํ•œ ํ•„๋“œ ์ดˆ๊ธฐํ™”


getName()โ€” ์ด ๋ฉ”์„œ๋“œ๋Š” ์ด๋ฆ„ ํ•„๋“œ์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค




setName()โ€” ์ด ๋ฉ”์„œ๋“œ๋Š” ์ด๋ฆ„ ํ•„๋“œ์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค

๋‹ค๋ฅธ ํด๋ž˜์Šค๋Š” ์ด๋ฆ„ ํ•„๋“œ์˜ ๊ฐ’์„ ์ง์ ‘ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. getName() ๋ˆ„๊ตฐ๊ฐ€ ์ด๋ฆ„ ํ•„๋“œ์˜ ๊ฐ’์„ ๊ฐ€์ ธ์™€์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๊ฐœ์ฒด ์—์„œ ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค Person. setName() ์ผ๋ถ€ ์ฝ”๋“œ๊ฐ€ ์ด๋ฆ„ ํ•„๋“œ์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ๊ฐœ์ฒด ์—์„œ ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค Person.

์ด ๋ฉ”์„œ๋“œ๋Š” " ์ด๋ฆ„ ํ•„๋“œ์— ๋Œ€ํ•œ gettergetName() " ๋ผ๊ณ ๋„ ํ•˜๋ฉฐ ์ด ๋ฉ”์„œ๋“œ๋Š” " ์ด๋ฆ„ ํ•„๋“œ์— ๋Œ€ํ•œ setter " ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค .setName()

์ด๊ฒƒ์€ ๋งค์šฐ ์ผ๋ฐ˜์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  Java ์ฝ”๋“œ์˜ 80-90%์—์„œ๋Š” ํด๋ž˜์Šค์—์„œ ๊ณต์šฉ ๋ณ€์ˆ˜๋ฅผ ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. private๋Œ€์‹  ์„ ์–ธ (๋˜๋Š” ) ๋˜๋ฉฐ protected๊ฐ ๋ณ€์ˆ˜์—๋Š” ๊ณต๊ฐœ getter ๋ฐ setter๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ์ฝ”๋“œ๋ฅผ ๋” ๊ธธ์ง€๋งŒ ๋” ์•ˆ์ •์ ์œผ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

ํด๋ž˜์Šค ๋ณ€์ˆ˜์— ์ง์ ‘ ์•ก์„ธ์Šคํ•˜๋Š” ๊ฒƒ์€ ์ด์ค‘ ๋…ธ๋ž€์ƒ‰ ์„ ์„ ํ†ตํ•ด ์ž๋™์ฐจ๋ฅผ ๋Œ๋ฆฌ๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค . ๋” ์‰ฝ๊ณ  ๋น ๋ฅด์ง€๋งŒ ๋ชจ๋“  ์‚ฌ๋žŒ์ด ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ์ƒํ™ฉ์ด ์•…ํ™”๋ฉ๋‹ˆ๋‹ค.

x์ ( , ) ์„ ์„ค๋ช…ํ•˜๋Š” ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค y. ์ดˆ๋ณด์ž ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

class Point
{
   public int x;
   public int y;
}

์ˆ™๋ จ๋œ Java ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์•”ํ˜ธ
class Point {
   private int x;
   private int y;

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

   public int getX() {
      return x;
   }

   public void setX(int x) {
      this.x = x;
   }

   public int getY() {
      return y;
   }

   public void setY(int y) {
      this.y = y;
   }
}

์ฝ”๋“œ๊ฐ€ ๋” ๊ธด๊ฐ€์š”? ์˜์‹ฌํ•  ์—ฌ์ง€ ์—†์ด.

๊ทธ๋Ÿฌ๋‚˜ getter ๋ฐ setter์— ๋งค๊ฐœ๋ณ€์ˆ˜ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. x์˜ˆ๋ฅผ ๋“ค์–ด ๋ฐ ๊ฐ€ yํ•ญ์ƒ 0๋ณด๋‹ค ํฐ์ง€(๋˜๋Š” 0๋ณด๋‹ค ์ž‘์ง€ ์•Š์€์ง€) ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค . ์˜ˆ:

์•”ํ˜ธ ๋ฉ”๋ชจ
class Point {
   private int x;
   private int y;

   public Point(int x, int y) {
      this.x = x < 0 ? 0 : x;
      this.y = y < 0 ? 0 : y;
   }

   public int getX() {
      return x;
   }

   public void setX(int x) {
      this.x = x < 0 ?  0 : x;
   }

   public int getY() {
      return y;
   }

   public void setY(int y) {
      this.y = y < 0 ? 0 : y;
   }
}


2. ๊ฐœ์ฒด ์ˆ˜๋ช…

์—ฐ์‚ฐ์ž ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ฒด๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค๋Š” ๊ฒƒ์€ ์ด๋ฏธ ์•Œ๊ณ  new์žˆ์ง€๋งŒ ๊ฐœ์ฒด๋Š” ์–ด๋–ป๊ฒŒ ์‚ญ์ œ๋ฉ๋‹ˆ๊นŒ? ๊ทธ๋“ค์€ ์˜์›ํžˆ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค.

C++์™€ ๊ฐ™์€ ๋งŽ์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—๋Š” ๊ฐœ์ฒด๋ฅผ ์‚ญ์ œํ•˜๊ธฐ ์œ„ํ•œ ํŠน์ˆ˜ ์—ฐ์‚ฐ์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค delete. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ Java์—์„œ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ?

Java์—์„œ๋Š” ๋ชจ๋“  ๊ฒƒ์ด ์•ฝ๊ฐ„ ๋‹ค๋ฅด๊ฒŒ ๋ฐฐ์—ด๋ฉ๋‹ˆ๋‹ค. Java์—๋Š” ์‚ญ์ œ ์—ฐ์‚ฐ์ž๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๊ฐ์ฒด๊ฐ€ Java์—์„œ ์‚ญ์ œ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ? ์•„๋‹ˆ์š”, ๋ฌผ๋ก  ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด Java ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋น ๋ฅด๊ฒŒ ๋ถ€์กฑํ•ด์ง€๊ณ  ๋ช‡ ๋‹ฌ ๋™์•ˆ ์ค‘๋‹จ ์—†์ด ์‹คํ–‰๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๊ฐ€ ์—†์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Java์—์„œ๋Š” ๊ฐœ์ฒด ์‚ญ์ œ๊ฐ€ ์™„์ „ํžˆ ์ž๋™ํ™”๋ฉ๋‹ˆ๋‹ค. Java ์‹œ์Šคํ…œ ์ž์ฒด์—์„œ ๊ฐœ์ฒด ์‚ญ์ œ๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ€๋น„์ง€ ์ˆ˜์ง‘์ด๋ผ๊ณ  ํ•˜๋ฉฐ, ๊ฐ€๋น„์ง€๋ฅผ ์ˆ˜์ง‘ํ•˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๊ฐ€๋น„์ง€ ์ˆ˜์ง‘๊ธฐ ( GC ) ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค .

๊ทธ๋ ‡๋‹ค๋ฉด ์ž๋ฐ” ๋จธ์‹ ์€ ์–ธ์ œ ๊ฐ์ฒด๋ฅผ ์‚ญ์ œํ•ด์•ผ ํ•˜๋Š”์ง€ ์–ด๋–ป๊ฒŒ ์•Œ ์ˆ˜ ์žˆ์„๊นŒ์š”?

๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ๋Š” ๋ชจ๋“  ๊ฐ์ฒด๋ฅผ "๋„๋‹ฌ ๊ฐ€๋Šฅ"๊ณผ "๋„๋‹ฌ ๋ถˆ๊ฐ€"๋กœ ๋‚˜๋ˆ•๋‹ˆ๋‹ค. ๊ฐ์ฒด์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ€ ํ•˜๋‚˜ ์ด์ƒ ์žˆ์œผ๋ฉด ๋„๋‹ฌ ๊ฐ€๋Šฅํ•œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๋Š” ๋ณ€์ˆ˜๊ฐ€ ์—†์œผ๋ฉด ํ•ด๋‹น ๊ฐœ์ฒด๋Š” ๋„๋‹ฌํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜๊ณ  ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•˜๋Š” ์“ฐ๋ ˆ๊ธฐ๋กœ ์„ ์–ธ๋ฉ๋‹ˆ๋‹ค.

Java์—์„œ๋Š” ๊ธฐ์กด ๊ฐœ์ฒด์— ๋Œ€ํ•œ ์ฐธ์กฐ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ฐธ์กฐ๋งŒ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ์ฒด์— ๋Œ€ํ•œ ๋ชจ๋“  ์ฐธ์กฐ๋ฅผ ์ง€์šฐ๋ฉด ์˜์›ํžˆ ์†์‹ค๋ฉ๋‹ˆ๋‹ค.

์ˆœํ™˜ ์ฐธ์กฐ

๊ทธ ๋…ผ๋ฆฌ๋Š” ์šฐ๋ฆฌ๊ฐ€ ๊ฐ„๋‹จํ•œ ๋ฐ˜๋ก€์— ๋„๋‹ฌํ•  ๋•Œ๊นŒ์ง€ ํ›Œ๋ฅญํ•˜๊ฒŒ ๋“ค๋ฆฝ๋‹ˆ๋‹ค: ์„œ๋กœ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ๋‘ ๊ฐœ์˜ ๊ฐœ์ฒด๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค(์„œ๋กœ์— ๋Œ€ํ•œ ์ฐธ์กฐ ์ €์žฅ). ๋‹ค๋ฅธ ๊ฐœ์ฒด๋Š” ์ด๋Ÿฌํ•œ ๊ฐœ์ฒด์— ๋Œ€ํ•œ ์ฐธ์กฐ๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ฐœ์ฒด๋Š” ์ฝ”๋“œ์—์„œ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์ง€๋งŒ ์—ฌ์ „ํžˆ ์ฐธ์กฐ๋ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ๊ฐ€ ๊ฐ์ฒด๋ฅผ "์ฐธ์กฐ๋œ" ๊ฐ์ฒด์™€ "์ฐธ์กฐ๋˜์ง€ ์•Š์€ ๊ฐ์ฒด"๊ฐ€ ์•„๋‹Œ ๋„๋‹ฌ ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด์™€ ๋„๋‹ฌ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด๋กœ ๋‚˜๋ˆ„๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค.

๋„๋‹ฌ ๊ฐ€๋Šฅํ•œ ๊ฐœ์ฒด

๋จผ์ € 100% ์‚ด์•„ ์žˆ๋Š” ๊ฐœ์ฒด๋ฅผ ๋„๋‹ฌ ๊ฐ€๋Šฅํ•œ ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํ˜„์žฌ ์Šค๋ ˆ๋“œ( Thread.current()) ๋˜๋Š” ์ฝ˜์†” InputStream( System.in).

๊ทธ๋Ÿฐ ๋‹ค์Œ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅํ•œ ๊ฐœ์ฒด ๋ชฉ๋ก์ด ํ™•์žฅ๋˜์–ด ์ดˆ๊ธฐ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅํ•œ ๊ฐœ์ฒด ์ง‘ํ•ฉ์—์„œ ์ฐธ์กฐํ•˜๋Š” ๊ฐœ์ฒด๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ด ํ™•์žฅ๋œ ์ง‘ํ•ฉ์—์„œ ์ฐธ์กฐํ•˜๋Š” ๊ฐœ์ฒด๋ฅผ ํฌํ•จํ•˜๋„๋ก ๋‹ค์‹œ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค.

์ฆ‰, ์„œ๋กœ ์ฐธ์กฐ๋งŒ ํ•˜๋Š” ๊ฐœ์ฒด๊ฐ€ ์žˆ์ง€๋งŒ ๋„๋‹ฌ ๊ฐ€๋Šฅํ•œ ๊ฐœ์ฒด์—์„œ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ๊ฐœ์ฒด๋Š” ๊ฐ€๋น„์ง€๋กœ ๊ฐ„์ฃผ๋˜์–ด ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.


3. ์“ฐ๋ ˆ๊ธฐ ์ˆ˜๊ฑฐ

๋ฉ”๋ชจ๋ฆฌ ๋‹จํŽธํ™”

๊ฐ์ฒด ์‚ญ์ œ์™€ ๊ด€๋ จ๋œ ๋˜ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ์ ์€ ๋ฉ”๋ชจ๋ฆฌ ์กฐ๊ฐํ™”์ž…๋‹ˆ๋‹ค. ์ง€์†์ ์œผ๋กœ ๊ฐœ์ฒด๋ฅผ ๋งŒ๋“ค๊ณ  ์‚ญ์ œํ•˜๋ฉด ๊ณง ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์‹ฌํ•˜๊ฒŒ ์กฐ๊ฐํ™”๋ฉ๋‹ˆ๋‹ค. ์ ์œ ๋œ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ๊ณผ ๋น„์–ด ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์ด ์‚ฐ์žฌํ•ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋งŽ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํฐ ๊ฐ์ฒด(์˜ˆ: ๋ฐฑ๋งŒ ๊ฐœ์˜ ์š”์†Œ๊ฐ€ ์žˆ๋Š” ๋ฐฐ์—ด)๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์— ์‰ฝ๊ฒŒ ๋น ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋งŽ๋”๋ผ๋„ ์—ฐ์†์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฉ”๋ชจ๋ฆฌ ๋ธ”๋ก์ด ํฌ์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ ์ตœ์ ํ™”(์กฐ๊ฐ ๋ชจ์Œ)

Java ๋จธ์‹ ์€ ํŠน์ • ๋ฐฉ์‹์œผ๋กœ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณด์ž…๋‹ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ๋Š” ๋‘ ๋ถ€๋ถ„์œผ๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฐœ์ฒด๋Š” ์ ˆ๋ฐ˜์˜ ๋ฉ”๋ชจ๋ฆฌ์—์„œ๋งŒ ์ƒ์„ฑ(๋ฐ ์‚ญ์ œ)๋ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์˜ ๊ตฌ๋ฉ์„ ์ •๋ฆฌํ•  ์‹œ๊ฐ„์ด ๋˜๋ฉด ์ „๋ฐ˜๋ถ€์˜ ๋ชจ๋“  ๊ฐ์ฒด๊ฐ€ ํ›„๋ฐ˜๋ถ€์— ๋ณต์‚ฌ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋“ค์€ ๊ตฌ๋ฉ์ด ์—†๋„๋ก ์„œ๋กœ ๋ฐ”๋กœ ์˜†์— ๋ณต์‚ฌ๋ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์„ธ์Šค๋Š” ๋Œ€๋žต ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

1๋‹จ๊ณ„: ๊ฐœ์ฒด ์ƒ์„ฑ ํ›„

Java์˜ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜

2๋‹จ๊ณ„: "๊ตฌ๋ฉ" ๋ชจ์–‘

Java 2์˜ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜

3๋‹จ๊ณ„: "๊ตฌ๋ฉ" ์ œ๊ฑฐ

Java 3์˜ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜

๋”ฐ๋ผ์„œ ๊ฐœ์ฒด๋ฅผ ์‚ญ์ œํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Java ๋จธ์‹ ์€ ๋„๋‹ฌ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๊ฐœ์ฒด๋ฅผ ์ƒˆ ์œ„์น˜์— ๋ณต์‚ฌํ•˜๊ณ  ๊ฐœ์ฒด๊ฐ€ ์ €์žฅ๋˜์—ˆ๋˜ ์ „์ฒด ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์„ ํ•ด์ œํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋ฉ˜ํŠธ
  • ์ธ๊ธฐ
  • ์‹ ๊ทœ
  • ์ด์ „
์ฝ”๋ฉ˜ํŠธ๋ฅผ ๋‚จ๊ธฐ๋ ค๋ฉด ๋กœ๊ทธ์ธ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค
์ด ํŽ˜์ด์ง€์—๋Š” ์•„์ง ์ฝ”๋ฉ˜ํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค