์ต๋ช…์˜ ๋‚ด๋ถ€ ํด๋ž˜์Šค ๋ฐ ์˜ˆ - 1

"์•ˆ๋…•, ์•„๋ฏธ๊ณ !"

"ํ•˜์ง€๋งŒ ์šฐ๋ฆฐ ์ด๋ฏธ ์ธ์‚ฌํ–ˆ์ง€, ์—˜๋ฆฌ!"

"์ด๋ด, ์ด๋ชจ๋ž‘ ๋ง๋‹คํˆผํ•˜์ง€ ๋งˆ. 31์„ธ๊ธฐ์—๋Š” ๋ˆ„๊ตฐ๊ฐ€๋ฅผ 30๋ถ„ ์ด์ƒ ๋งŒ๋‚˜์ง€ ์•Š์œผ๋ฉด ๋‹ค์‹œ ์ธ์‚ฌํ•˜๋Š” ๊ฒƒ์ด ๊ด€์Šต์ด์•ผ. ๊ทธ๋Ÿฌ๋‹ˆ ๋‚˜์—๊ฒŒ ํƒœ๋„๋ฅผ ์ฃผ์ง€ ๋งˆ!"

"์–ด์จŒ๋“ , ๋˜ ๋‹ค๋ฅธ ํฅ๋ฏธ๋กœ์šด ์ฃผ์ œ์ธ ๋กœ๋ด‡ ์žฌ์ƒ์‚ฐ์„ ํ•  ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค!"

"O_O."

"๋†๋‹ด์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์ฃผ์ œ๋Š” ์ต๋ช…์˜ ๋‚ด๋ถ€ ํด๋ž˜์Šค ์ž…๋‹ˆ๋‹ค ."

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

Thread ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›์€ ๋‚ด๋ถ€ ํด๋ž˜์Šค์˜ ์˜ˆ
class Tiger extends Cat
{
 public void tigerRun()
 {
  .....
 }

 public void startTiger()
 {
  TigerThread thread = new TigerThread();
  thread.start();
 }

 class TigerThread extends Thread
 {
  public void run()
  {
   tigerRun();
  }
 }
}

"๋‹ค๋ฅธ ์˜ˆ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค."

์‹คํ–‰ ๋ฉ”์„œ๋“œ๋ฅผ ์žฌ์ •์˜ํ•˜๋ ค๋ฉด Thread ํด๋ž˜์Šค์˜ ํ•˜์œ„ ํด๋ž˜์Šค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค."

"๊ทธ๋ž˜์„œ Tiger ํด๋ž˜์Šค์—์„œ Thread๋ฅผ ์ƒ์†ํ•˜๊ณ  run ๋ฉ”์„œ๋“œ๋ฅผ ์žฌ์ •์˜ํ•˜๋Š” TigerThread ๋‚ด๋ถ€ ํด๋ž˜์Šค๋ฅผ ์„ ์–ธํ–ˆ์Šต๋‹ˆ๋‹ค.

"ํŽธ์˜๋ฅผ ์œ„ํ•ด Tiger ํด๋ž˜์Šค์— ๋‘ ๊ฐ€์ง€ ๋ฉ”์„œ๋“œ์ธ tigerRun๊ณผ startTiger๋ฅผ ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค (Thread์˜ ์‹คํ–‰ ๋ฐ ์‹œ์ž‘ ๋ฉ”์„œ๋“œ์™€ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.").

"tigerStart ๋ฉ”์†Œ๋“œ์—์„œ TigerThread ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑ ํ•˜๊ณ  start() ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค."

"JVM์€ TigerThread์˜ ์‹คํ–‰ ๋ฉ”์†Œ๋“œ๊ฐ€ ํ˜ธ์ถœ๋  ๋•Œ ์‹คํ–‰์„ ์‹œ์ž‘ํ•  ์ƒˆ ์Šค๋ ˆ๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค ."

"๊ทธ๋Ÿฐ ๋‹ค์Œ ์ด ๋ฉ”์„œ๋“œ๋Š” ์šฐ๋ฆฌ์˜ ์‹คํ–‰ ๋ฉ”์„œ๋“œ์ธ tigerRun์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค ."

"์ด์ „์— ์Šค๋ ˆ๋“œ๋กœ ์ž‘์—…ํ•œ ์ ์ด ์žˆ์œผ๋ฏ€๋กœ ๊ฐ„๋‹จํ•ด ๋ณด์ž…๋‹ˆ๋‹ค."

"๋ฐฉ๋ฒ•์˜ ์ด๋ฆ„์„ tigerRun ๋ฐ tigerStart๋กœ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?"

"์•„๋‹ˆ์š”, ์‹คํ–‰ ๋ฐ ์‹œ์ž‘์ด๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜ ์žˆ์—ˆ์ง€๋งŒ Thread๋ฅผ ์ƒ์†ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ฃผ๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์„ค๋ช…์ด ๋” ํ˜ผ๋ž€์Šค๋Ÿฌ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."

"์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ tigerStart๊ฐ€ ๋‘ ๋ฒˆ์งธ๋กœ ํ˜ธ์ถœ๋˜๋ฉด ๋‘ ๋ฒˆ์งธ Thread ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. "๋‘ ๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ์Šค๋ ˆ๋“œ์—์„œ ์‹คํ–‰ ์ค‘์ธ ํ•˜๋‚˜์˜ ํ˜ธ๋ž‘์ด"๊ฐ€ ์žˆ๋‹ค๋Š” ์˜๋ฏธ๊ฐ€ ์•„๋‹™๋‹ˆ๊นŒ? "

"๊ธ€์Ž„, ๋‹น์‹ ์€ ๋‚ ์นด๋กญ์ง€ ์•Š์Šต๋‹ˆ๊นŒ! ๋‹น์‹ ์ด ์˜ณ๊ณ  ์ข‹์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•ด ๋ด…์‹œ๋‹ค."

์•”ํ˜ธ
class Tiger extends Cat
{
 public void tigerRun()
 {
  .....
 }

 public void startTiger()
 {
  thread.start();
 }

 private TigerThread thread = new TigerThread();

 private class TigerThread extends Thread
 {
  public void run()
  {
   tigerRun();
  }
 }
}

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

"๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค. Tiger๊ฐ€ ๋‘ ๋ฒˆ์งธ๋กœ ์‹œ์ž‘๋˜๋ฉด ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค."

"๋‚˜๋Š” ์ด๋ฏธ ๋„ˆ๋ณด๋‹ค ์‹ค์ˆ˜๋ฅผ ๋” ์ž˜ ์ฐพ์•„๋‚ด๊ณ  ์žˆ์–ด, ์—˜๋ฆฌ!"

"๊ทธ๋ž˜, ์ž˜ํ•˜๊ณ  ์žˆ์–ด. ๊ทธ๋Ÿผ ์ต๋ช…์˜ ๋‚ด๋ถ€ ํด๋ž˜์Šค๋กœ ๋„˜์–ด๊ฐ€์ž."

"์œ„ ์ฝ”๋“œ์˜ ์—ฌ๋Ÿฌ ์ธก๋ฉด์— ์œ ์˜ํ•˜์‹ญ์‹œ์˜ค."

1) ์šฐ๋ฆฌ๋Š” Thread ํด๋ž˜์Šค๋ฅผ ๋ฌผ๋ ค๋ฐ›์•˜์ง€๋งŒ ์‹ค์ œ๋กœ ๊ฑฐ๊ธฐ์— ์ฝ”๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. "ยซ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ํ™•์žฅํ•˜๊ธฐ ์œ„ํ•ด ๊ทธ๊ฒƒ์„ ๋ฌผ๋ ค๋ฐ›์•˜์Šต๋‹ˆ๋‹คยป๋ผ๊ธฐ๋ณด๋‹ค๋Š” ยซ์šฐ๋ฆฌ๋Š” Thread ํด๋ž˜์Šค๋ฅผ ๋ฌผ๋ ค๋ฐ›์•„์•ผ ํ–ˆ์Šต๋‹ˆ๋‹คยป์˜€์Šต๋‹ˆ๋‹ค.

2) ํ•˜๋‚˜์˜ TigerThread ๊ฐ์ฒด๋งŒ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

์ฆ‰, ํ•˜๋‚˜์˜ ๋ฉ”์„œ๋“œ๋ฅผ ์žฌ์ •์˜ํ•˜๊ณ  ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ์ฝ”๋“œ ์ „์ฒด๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ์ƒ์„ฑ์ž์˜ ๋ฐœ๋ช…์— ๋Œ€ํ•ด ์–ด๋–ป๊ฒŒ ์ด์•ผ๊ธฐํ–ˆ๋Š”์ง€ ๊ธฐ์–ตํ•˜์‹ญ๋‹ˆ๊นŒ?

์ƒ์„ฑ์ž ์ด์ „ ์ƒ์„ฑ์ž ์ดํ›„
TigerThread thread = new TigerThread();

private class TigerThread extends Thread
{
 public void run()
 {
  tigerRun();
 }
}
Thread thread = new Thread()
{
 public void run()
 {
  tigerRun();
 }
};

"์ฝ”๋“œ๊ฐ€ ๋” ๊ฐ„๊ฒฐํ•ด์ง„ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค."

"๋„ค ๊ฐ€์ง€๋ฅผ ํ•˜๋‚˜๋กœ ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."

1) ํŒŒ์ƒ ํด๋ž˜์Šค ์„ ์–ธ

2) ๋ฉ”์„œ๋“œ ์žฌ์ •์˜

3) ๋ณ€์ˆ˜ ์„ ์–ธ

4) ํŒŒ์ƒ ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ.

"์‚ฌ์‹ค ์šฐ๋ฆฌ๊ฐ€ ํ•˜๊ณ  ์žˆ๋Š” ์ผ์€ ํŒŒ์ƒ ํด๋ž˜์Šค๋ฅผ ์„ ์–ธํ•˜๊ณ  ํ•ด๋‹น ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ์ž‘์—…์„ ๊ฒฐํ•ฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค."

์ต๋ช… ํด๋ž˜์Šค ์—†์ด ์ต๋ช… ์ˆ˜์—…์œผ๋กœ
Cat tiger = new Tiger();

class Tiger extends Cat
{
}
Cat tiger = new Cat()
{
};

"๊ตฌ๋ฌธ์„ ๋‹ค์‹œ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค."

์Šค๋ ˆ๋“œ ๋ณ€์ˆ˜ ์„ ์–ธ
Thread thread = new Thread();
์œ ํ˜•์ด ยซThread๋ฅผ ์ƒ์†ํ•˜๋Š” ์ต๋ช… ํด๋ž˜์Šคยป์ธ ๋ณ€์ˆ˜ ์„ ์–ธ
Thread thread = new Thread()
{

};

"๋‹จ์ˆœํžˆ ์ƒˆ ํด๋ž˜์Šค๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋์— ์„ธ๋ฏธ์ฝœ๋ก ์ด ์žˆ์Šต๋‹ˆ๋‹ค!"

"๊ทธ๋ฆฌ๊ณ  run ๋ฉ”์„œ๋“œ๋ฅผ ์žฌ์ •์˜ํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค."

์Šค๋ ˆ๋“œ ๋ณ€์ˆ˜ ์„ ์–ธ
Thread thread = new Thread()
{
 public void run()
  {
   System.out.println("new run-method");
  }
};

"๋‹น์‹ ์€ ๋นจ๋ฆฌ ๋”ฐ๋ผ ์žก์Šต๋‹ˆ๋‹ค. ์ž˜ ํ–ˆ์–ด!"

"๊ณ ๋ง™์Šต๋‹ˆ๋‹ค. Thread ํด๋ž˜์Šค์˜ ์ผ๋ถ€๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ๋ฉ”์„œ๋“œ๊ฐ€ ํ•„์š”ํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ํ•ฉ๋‹ˆ๊นŒ?"

"๋‹น์‹ ์€ ๊ทธ๋“ค์„ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."

"๋น„๋ก ์ต๋ช…์ด์ง€๋งŒ ๋ณธ๊ฒฉ์ ์ธ ๋‚ด๋ถ€ ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค."

์ž๋ฐ” ์ฝ”๋“œ ์„ค๋ช…
Thread thread = new Thread()
{
  public void run()
  {
   printHi();
  }

  public void printHi()
  {
   System.out.println("Hi!");
  }
};	 
๋นจ๊ฐ„์ƒ‰: ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.

๋…น์ƒ‰: ๊ฐœ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.

ํŒŒ๋ž€์ƒ‰: ์ต๋ช… ํŒŒ์ƒ ํด๋ž˜์Šค์— ๋Œ€ํ•œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.

"๋ณธ๊ฒฉ์ ์ธ ์ด๋„ˆ ํด๋ž˜์Šค?"

"๊ทธ๋Ÿฌ๋ฉด ์™ธ๋ถ€ ํด๋ž˜์Šค์˜ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?"

"์ „์ ์œผ๋กœ."

"๊ทธ๋ฆฌ๊ณ  ์ƒ์„ฑ์ž์—๊ฒŒ ๋ฌด์–ธ๊ฐ€๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?"

"์˜ˆ, ํ•˜์ง€๋งŒ ์Šˆํผํด๋ž˜์Šค์˜ ์ƒ์„ฑ์ž์— ๋Œ€ํ•œ ์ธ์ˆ˜๋งŒ:"

์ˆ˜์—… ์ต๋ช… ๋‚ด๋ถ€ ํด๋ž˜์Šค์˜ ์ธ์Šคํ„ด์Šค
class Cat
{
 int x, y;
 Cat(int x, int y)
 {
  this.x = x;
  thix.y = y;
 }
}
Cat cat = new Cat(3,4)
{
  public void print()
  {
   System.out.println(x+" "+y);
  }
};

"์šฐ๋ฆฌ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ƒ์„ฑ์ž์— ์šฐ๋ฆฌ ์ž์‹ ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์™ธ๋ถ€ ํด๋ž˜์Šค์˜ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด ์ด ๋‹จ์ ์„ ํ›Œ๋ฅญํ•˜๊ฒŒ ๋ณด์™„ํ•ฉ๋‹ˆ๋‹ค."

"์•„์ง๋„ ์ƒ์„ฑ์ž์— ๋‹ค๋ฅธ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?"

"๊ทธ๋Ÿฐ ๋‹ค์Œ ์ผ๋ฐ˜(๋น„์ต๋ช…) ๋‚ด๋ถ€ ํด๋ž˜์Šค๋ฅผ ์„ ์–ธํ•˜๊ณ  ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค."

"๋งž์•„, ๊ฑฐ์˜ ์žŠ๊ณ  ์žˆ์—ˆ์–ด."

"์ •์  ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ์š”? ์ต๋ช… ํด๋ž˜์Šค๊ฐ€ ๋‚ด๋ถ€ ํด๋ž˜์Šค๊ฐ€ ์•„๋‹Œ ์ •์  ์ค‘์ฒฉ ํด๋ž˜์Šค๊ฐ€ ๋ ๊นŒ์š”? ์ฆ‰, ์™ธ๋ถ€ ํด๋ž˜์Šค์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ€ ๋ถ€์กฑํ• ๊นŒ์š”?"

"์•„๋‹ˆ์š”. ์ต๋ช…์˜ ๋‚ด๋ถ€ ํด๋ž˜์Šค๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ์˜ˆ๋ฅผ ๋ณด์‹ญ์‹œ์˜ค."

์ต๋ช… ์ˆ˜์—…์œผ๋กœ ์ต๋ช… ํด๋ž˜์Šค ์—†์ด
Thread thread = new Thread()
{
  public void run()
  {
   tigerRun();
  }
};
TigerThread thread = new TigerThread();

private class TigerThread extends Thread
{
 public void run()
 {
  tigerRun();
 }
}
static Thread thread = new Thread()
{
  public void run()
  {
   tigerRun();
  }
};
static TigerThread thread = new TigerThread();

private class TigerThread extends Thread
{
 public void run()
 {
  tigerRun();
 }
}

"๊ทธ๋ ‡๊ตฐ์š”. ํด๋ž˜์Šค๊ฐ€ ์•„๋‹ˆ๋ผ ์ •์  ๋ณ€์ˆ˜๋งŒ ์ •์ ์ด๊ฒ ์ฃ ."

"๋„ค."

"์‹ค์ œ๋กœ ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๋ชจ๋“  ์ต๋ช…์˜ ๋‚ด๋ถ€ ํด๋ž˜์Šค์— ๋Œ€ํ•œ ๋‚ด๋ถ€ ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํด๋ž˜์Šค์˜ ์ด๋ฆ„์€ ์ผ๋ฐ˜์ ์œผ๋กœ ยซ1ยป, ยซ2ยป, ยซ3ยป ๋“ฑ์œผ๋กœ ์ง€์ •๋ฉ๋‹ˆ๋‹ค."