1. ์ƒ์„ฑ์ž๊ฐ€ ํ•„์š”ํ•œ ์ด์œ  :

 

๊ฐ์ฒด๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ณ , ํŠน์ • ์ž‘์—…์„ ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ์ ์— ์‹คํ–‰ํ•˜๋„๋ก ํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค. ์ƒ์„ฑ์ž๋Š” ํด๋ž˜์Šค์˜ ํŠน๋ณ„ํ•œ ๋ฉ”์„œ๋“œ๋กœ, ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ์ž๋™์œผ๋กœ ํ˜ธ์ถœ๋œ๋‹ค.

  1.1 ๊ฐ์ฒด ์ดˆ๊ธฐํ™” - ํด๋ž˜์Šค์˜ ๋ฉค๋ฒ„ ๋ณ€์ˆ˜๋ฅผ ์ดˆ๊ธฐํ™” ํ•˜๋Š” ์—ญํ• . ๊ฐ์ฒด ์ƒ์„ฑ์‹œ ํŠน์ • ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•˜์—ฌ, ์˜ฌ๋ฐ”๋ฅธ ์ƒํƒœ๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•œ๋‹ค.

class Person {
    String name;
    int age;
    
    //์ƒ์„ฑ์ž 
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}

// ์‚ฌ์šฉ 
Person person = new Person("Alice", 25)

 

  1.2 ์ฝ”๋“œ์˜ ๊ฐ„๊ฒฐ์„ฑ๊ณผ ๊ฐ€๋…์„ฑ : ์ดˆ๊ธฐํ™” ๋กœ์ง์œผ๋กœ ์ƒ์„ฑ์ž์— ๋„ฃ์œผ๋ฉด ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ ์ค‘๋ณต ์ฝ”๋“œ๋ฅผ ์ค„์ด๊ณ  ๊ฐ€๋…์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.

//์ƒ์„ฑ์ž๊ฐ€ ์—†์„ ๋•Œ
Person person = new Person();
person.name = "Alice";
person.age = 25;

//์ƒ์„ฑ์ž๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ
Person person = new Person ("Alice", 25);

  1.3 ๊ธฐ๋ณธ๊ฐ’ ์„ค์ • : ์ƒ์„ฑ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ ๊ธฐ๋ณธ๊ฐ’์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด, ๋ณ„๋„์˜ ์ดˆ๊ธฐํ™” ์ฝ”๋“œ ์—†์ด๋„ ๊ธฐ๋ณธ์ ์ธ ์ƒํƒœ ์œ ์ง€ ๊ฐ€๋Šฅ. 

class Car {
    String color = "Black";
    int wheels = 4;

    public Car() {
        // ๊ธฐ๋ณธ ์ƒ์„ฑ์ž
    }
}

Car car = new Car(); // ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”๋จ

 

 

1.4 ํ•„์ˆ˜๊ฐ’ ๊ฐ•์ œ : ์ƒ์„ฑ์ž๋ฅผ ํ†ตํ•ด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ํ•„์š”ํ•œ ๊ฐ’์„ ๊ฐ•์ œํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ถˆ์™„์ „ํ•œ ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•œ๋‹ค. 

<Account ํด๋ž˜์Šค>

package javaBasicLecture.review.construct;

public class Account {
    String accountNumber;

    // ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ฐ›๋Š” ์ƒ์„ฑ์ž
    public Account(String accountNumber) {
        if (accountNumber == null || accountNumber.isEmpty()) {
            throw new IllegalArgumentException("๊ณ„์ขŒ๋ฒˆํ˜ธ๋Š” ๊ณต๋ฐฑ์œผ๋กœ ๋‚จ๊ธธ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.");
        }
        this.accountNumber = accountNumber;
    }

    // ๊ธฐ๋ณธ ์ƒ์„ฑ์ž
    public Account() {
        throw new IllegalArgumentException("๊ณ„์ขŒ๋ฒˆํ˜ธ๋ฅผ ๋ฐ˜๋“œ์‹œ ์ž…๋ ฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.");
    }
}

1). ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ฐ›๋Š” ์ƒ์„ฑ์ž

  • ์ด ์ƒ์„ฑ์ž๋Š” accountNumber๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฐ›๋Š”๋‹ค.

์กฐ๊ฑด ๊ฒ€์‚ฌ:

   - accountNumber๊ฐ€ null์ด๊ฑฐ๋‚˜ ๋น„์–ด ์žˆ๋Š” ๊ฐ’์ผ ๊ฒฝ์šฐ ์˜ˆ์™ธ(IllegalArgumentException)๋ฅผ ๋˜์ง„๋‹ค

      ๋˜์ ธ์ง„ ์˜ˆ์™ธ๋Š” ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์ค‘ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๋Š” ์‹ ํ˜ธ๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.

๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ•˜๋ฉด this.accountNumber = accountNumber;๋กœ ๊ฐ’์„ ์ดˆ๊ธฐํ™”ํ•œ๋‹ค.

 

2). ๊ธฐ๋ณธ ์ƒ์„ฑ์ž

์ด ์ƒ์„ฑ์ž๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ฐ›์ง€ ์•Š๋Š”๋‹ค.

ํ˜ธ์ถœ๋˜๋ฉด ๋ฌด์กฐ๊ฑด ์˜ˆ์™ธ๋ฅผ ๋˜์ ธ, ๊ธฐ๋ณธ ์ƒ์„ฑ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ—ˆ์šฉ๋˜์ง€ ์•Š์Œ์„ ๋ช…ํ™•ํžˆ ํ•œ๋‹ค.

<AccountMain ํด๋ž˜์Šค>

package javaBasicLecture.review.construct;

public class AccountMain {
    public static void main(String[] args) {
        try {
            Account account = new Account(); // ๊ธฐ๋ณธ ์ƒ์„ฑ์ž ํ˜ธ์ถœ
        } catch (IllegalArgumentException e) {
            System.out.println("์˜ค๋ฅ˜ ๋ฐœ์ƒ: " + e.getMessage());
        }
    }
}

1.) try ๋ธ”๋ก

  • Account account = new Account();์—์„œ ๊ธฐ๋ณธ ์ƒ์„ฑ์ž๋ฅผ ํ˜ธ์ถœํ•œ๋‹ค.

  • ๊ธฐ๋ณธ ์ƒ์„ฑ์ž๋Š” IllegalArgumentException ์˜ˆ์™ธ๋ฅผ ๋˜์ง€๋ฏ€๋กœ ์ด ์ฝ”๋“œ๋Š” ๋ฐ”๋กœ ์˜ˆ์™ธ๋ฅผ ๋ฐœ์ƒ์‹œํ‚จ๋‹ค.

2). catch ๋ธ”๋ก

  • ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด catch ๋ธ”๋ก์œผ๋กœ ์ œ์–ด๊ฐ€ ์ด๋™ํ•œ๋‹ค.

  • ๋ฐœ์ƒํ•œ ์˜ˆ์™ธ ๊ฐ์ฒด(e)์˜ ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•˜์—ฌ ๋ฌธ์ œ์˜ ์›์ธ์„ ์‚ฌ์šฉ์ž์—๊ฒŒ ์•Œ๋ฆฐ๋‹ค.

  • ์ถœ๋ ฅ ๋ฉ”์‹œ์ง€: "์˜ค๋ฅ˜ ๋ฐœ์ƒ: ๊ณ„์ขŒ๋ฒˆํ˜ธ๋ฅผ ๋ฐ˜๋“œ์‹œ ์ž…๋ ฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค."

 

ใ…‡


3. ์‹คํ–‰ ํ๋ฆ„

1. main ๋ฉ”์„œ๋“œ์—์„œ new Account() ํ˜ธ์ถœ.

2. ๊ธฐ๋ณธ ์ƒ์„ฑ์ž๊ฐ€ ํ˜ธ์ถœ๋˜๋ฉด์„œ ์˜ˆ์™ธ๋ฅผ ๋˜์ง:

throw new IllegalArgumentException("๊ณ„์ขŒ๋ฒˆํ˜ธ๋ฅผ ๋ฐ˜๋“œ์‹œ ์ž…๋ ฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.");

3. ๋˜์ ธ์ง„ ์˜ˆ์™ธ๋Š” catch ๋ธ”๋ก์—์„œ ์žกํžˆ๊ณ , ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅ:

System.out.println("์˜ค๋ฅ˜ ๋ฐœ์ƒ: " + e.getMessage());
์˜ค๋ฅ˜ ๋ฐœ์ƒ: ๊ณ„์ขŒ๋ฒˆํ˜ธ๋ฅผ ๋ฐ˜๋“œ์‹œ ์ž…๋ ฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

1.5 ๋‹ค์–‘ํ•œ ์ดˆ๊ธฐํ™” ์ œ๊ณต (์˜ค๋ฒ„๋กœ๋”ฉ)

- ์ƒ์„ฑ์ž ์˜ค๋ฒ„๋กœ๋”ฉ์„ ํ†ตํ•ด ๊ฐ์ฒด๋ฅผ ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค.

class Rectangle {
  int width, height;
  
  //๊ธฐ๋ณธ ์ƒ์„ฑ์ž
  public Rectangle() {
     this.width = 1;
     this.height = 1;
  }
  
  //๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์žˆ๋Š” ์ƒ์„ฑ์ž
  public Rectangle(int width, int height) {
      this.width = width;
      this.height = height;
  }
Rectangle r1 = new Rectangle(); // ๊ธฐ๋ณธ ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”
Rectangel r2 = new Rectangle(5, 10); // ํŠน์ • ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”
}
์˜ค๋ฒ„๋กœ๋”ฉ์„ ์‚ฌ์šฉํ•  ๋•Œ ๊ตฌ๋ถ„๋˜๋Š” ๊ธฐ์ค€์€ ๋ฐ˜๋“œ์‹œ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐœ์ˆ˜, ํƒ€์ž…, ๋˜๋Š” ์ˆœ์„œ์ด๋‹ค.
๋ฐ˜ํ™˜๊ฐ’์€ ๋ฉ”์„œ๋“œ ์˜ค๋ฒ„๋กœ๋”ฉ์„ ๊ตฌ๋ถ„ํ•˜๋Š” ๊ธฐ์ค€์ด ๋  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ์ฃผ์˜ํ•ด์•ผ ํ•œ๋‹ค.

 

 

< ์˜ค๋ฒ„๋กœ๋”ฉ(Overloading)๋ž€ ๋ฌด์—‡์ธ๊ฐ€? >
- ์˜ค๋ฒ„๋กœ๋”ฉ์€ ๊ฐ™์€ ์ด๋ฆ„์˜ ๋ฉ”์„œ๋“œ๋‚˜ ์ƒ์„ฑ์ž๋ฅผ ๋‹ค๋ฅธ ๋งค๊ฐœ๋ณ€์ˆ˜ ๋ชฉ๋ก์œผ๋กœ ์ •์˜ํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. 
   ์ฆ‰, ๊ฐ™์€ ์ด๋ฆ„์„ ๊ฐ€์ง€์ง€๋งŒ, ์ž…๋ ฅ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ํƒ€์ž…, ๊ฐœ์ˆ˜, ์ˆœ์ˆ˜๊ฐ€ ๋‹ค๋ฅธ ๋ฉ”์„œ๋“œ๋‚˜ ์ƒ์„ฑ์ž๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

< ์˜ค๋ฒ„๋กœ๋”ฉ์˜ ํŠน์ง• >
1. ๊ฐ™์€ ์ด๋ฆ„:
  • ๋ฉ”์„œ๋“œ ๋˜๋Š” ์ƒ์„ฑ์ž์˜ ์ด๋ฆ„์€ ๋™์ผํ•˜๋‹ค.
  • ํ˜ธ์ถœ ์‹œ ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ํƒ€์ž…๊ณผ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ์ ํ•ฉํ•œ ๋ฉ”์„œ๋“œ/์ƒ์„ฑ์ž๋ฅผ ์„ ํƒํ•œ๋‹ค.
2. ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๊ตฌ๋ถ„:
  • ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ํƒ€์ž…, ๊ฐœ์ˆ˜, ๋˜๋Š” ์ˆœ์„œ๊ฐ€ ๋‹ค๋ฅด๋ฉด ๋‹ค๋ฅธ ๋ฉ”์„œ๋“œ๋กœ ๊ฐ„์ฃผ๋œ๋‹ค.
  • ๋ฐ˜ํ™˜๊ฐ’์˜ ํƒ€์ž…๋งŒ์œผ๋กœ๋Š” ๊ตฌ๋ถ„๋˜์ง€ ์•Š๋Š”๋‹ค.

< ์˜ค๋ฒ„๋กœ๋”ฉ์˜ ๊ทœ์น™>
1. ๋ฉ”์„œ๋“œ/์ƒ์„ฑ์ž์˜ ์ด๋ฆ„์€ ๊ฐ™์•„์•ผ ํ•œ๋‹ค.
2. ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ํƒ€์ž…, ๊ฐœ์ˆ˜, ์ˆœ์„œ ์ค‘ ํ•˜๋‚˜ ์ด์ƒ์ด ๋‹ฌ๋ผ์•ผ ํ•œ๋‹ค.
3. ๋ฐ˜ํ™˜๊ฐ’์˜ ํƒ€์ž…์€ ์˜ค๋ฒ„๋กœ๋”ฉ ๊ตฌ๋ถ„ ๊ธฐ์ค€์ด ๋˜์ง€ ์•Š๋Š”๋‹ค.

 

์ƒ์„ฑ์ž ์˜ค๋ฒ„๋กœ๋”ฉ์˜ ์˜ˆ

 

์•„๋ž˜ ์ฝ”๋“œ๋Š” Account ํด๋ž˜์Šค์—์„œ ์ƒ์„ฑ์ž ์˜ค๋ฒ„๋กœ๋”ฉ์„ ํ™œ์šฉํ•˜๋Š” ์˜ˆ์ œ์ด๋‹ค.

 

1. ์˜ค๋ฒ„๋กœ๋”ฉ๋œ ์ƒ์„ฑ์ž

public class Account {
    String accountNumber;
    String accountHolder;

    // ๊ธฐ๋ณธ ์ƒ์„ฑ์ž: ๋งค๊ฐœ๋ณ€์ˆ˜ ์—†์Œ
    public Account() {
        this.accountNumber = "Unknown";
        this.accountHolder = "Unknown";
    }

    // ๋งค๊ฐœ๋ณ€์ˆ˜ 1๊ฐœ๋ฅผ ๋ฐ›๋Š” ์ƒ์„ฑ์ž
    public Account(String accountNumber) {
        this.accountNumber = accountNumber;
        this.accountHolder = "Unknown";
    }

    // ๋งค๊ฐœ๋ณ€์ˆ˜ 2๊ฐœ๋ฅผ ๋ฐ›๋Š” ์ƒ์„ฑ์ž
    public Account(String accountNumber, String accountHolder) {
        this.accountNumber = accountNumber;
        this.accountHolder = accountHolder;
    }
}

 

2. ์˜ค๋ฒ„๋กœ๋”ฉ๋œ ์ƒ์„ฑ์ž ์‚ฌ์šฉ

public class AccountMain {
    public static void main(String[] args) {
        // ๊ธฐ๋ณธ ์ƒ์„ฑ์ž ํ˜ธ์ถœ
        Account account1 = new Account();
        System.out.println("Account 1: " + account1.accountNumber + ", " + account1.accountHolder);

        // ๋งค๊ฐœ๋ณ€์ˆ˜ 1๊ฐœ ์ƒ์„ฑ์ž ํ˜ธ์ถœ
        Account account2 = new Account("12345678");
        System.out.println("Account 2: " + account2.accountNumber + ", " + account2.accountHolder);

        // ๋งค๊ฐœ๋ณ€์ˆ˜ 2๊ฐœ ์ƒ์„ฑ์ž ํ˜ธ์ถœ
        Account account3 = new Account("12345678", "John Doe");
        System.out.println("Account 3: " + account3.accountNumber + ", " + account3.accountHolder);
    }
}

 

์‹คํ–‰ ๊ฒฐ๊ณผ

Account 1: Unknown, Unknown
Account 2: 12345678, Unknown
Account 3: 12345678, John Doe

 


์˜ค๋ฒ„๋กœ๋”ฉ๊ณผ ๊ด€๋ จ๋œ ์ž˜๋ชป๋œ ์˜ˆ

// ์ž˜๋ชป๋œ ์˜ค๋ฒ„๋กœ๋”ฉ: ๋ฐ˜ํ™˜๊ฐ’๋งŒ ๋‹ค๋ฆ„
public class Account {
    public int add() {
        return 0;
    }

    public String add() { // ์˜ค๋ฅ˜ ๋ฐœ์ƒ: ๋ฐ˜ํ™˜๊ฐ’๋งŒ ๋‹ค๋ฆ„
        return "Hello";
    }
}

๋ฐ˜ํ™˜๊ฐ’๋งŒ ๋‹ค๋ฅด๋ฉด ์˜ค๋ฒ„๋กœ๋”ฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์ปดํŒŒ์ผ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

์™œ ๋ฐ˜ํ™˜๊ฐ’๋งŒ์œผ๋กœ ์˜ค๋ฒ„๋กœ๋”ฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•œ๊ฐ€?

์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ ์‹œ ๋ฐ˜ํ™˜๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์–ด๋–ค ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ• ์ง€ ํŒ๋‹จํ•˜์ง€ ์•Š๋Š”๋‹ค.
ํ˜ธ์ถœ์ž๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ ๋ฐ˜ํ™˜๊ฐ’์„ ๋ช…์‹œํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์ด๋‹ค:
Account account = new Account(); 
account.add();โ€‹
์œ„ ์ฝ”๋“œ์—์„œ ์ปดํŒŒ์ผ๋Ÿฌ๋Š” add() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ๋งŒ ์•Œ ์ˆ˜ ์žˆ์œผ๋ฉฐ,
๋ฐ˜ํ™˜๊ฐ’๋งŒ ๋‹ค๋ฅด๋‹ค๋ฉด ์–ด๋А add ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ• ์ง€ ํŒ๋‹จํ•  ์ˆ˜ ์—†๋‹ค.

์˜ค๋ฒ„๋กœ๋”ฉ์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž‘๋™ํ•˜๋ ค๋ฉด ๋ฐ˜ํ™˜๊ฐ’๋งŒ ๋‹ค๋ฅด๋‹ค๋Š” ์ด์œ ๋กœ๋Š” ๊ตฌ๋ถ„๋˜์ง€ ์•Š๊ณ , ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐœ์ˆ˜, ํƒ€์ž…, ๋˜๋Š” ์ˆœ์„œ๊ฐ€ ๋‹ฌ๋ผ์•ผ ํ•œ๋‹ค.

์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๋ฉ”์„œ๋“œ ์ด๋ฆ„๊ณผ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์–ด๋–ค ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ• ์ง€ ํŒ๋‹จํ•œ๋‹ค.

๋ฐ˜ํ™˜๊ฐ’์€ ํ˜ธ์ถœ ์‹œ์ ์— ๊ตฌ๋ถ„ ๊ธฐ์ค€์ด ๋  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ,

์•„๋ž˜์™€ ๊ฐ™์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋‹ค๋ฅด๊ฒŒ ์ •์˜ํ•ด์•ผ ํ•œ๋‹ค.


์˜ฌ๋ฐ”๋ฅธ ์˜ค๋ฒ„๋กœ๋”ฉ์˜ ์˜ˆ

 

๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋‹ค๋ฅธ ๊ฒฝ์šฐ

public class Account {
    public int add() {
        return 0;
    }

    public int add(int a) {
        return a;
    }
}

 

๋งค๊ฐœ๋ณ€์ˆ˜์˜ ํƒ€์ž…์ด ๋‹ค๋ฅธ ๊ฒฝ์šฐ

public class Account {
    public int add(int a) {
        return a;
    }

    public double add(double a) {
        return a;
    }
}

 

๋งค๊ฐœ๋ณ€์ˆ˜์˜ ์ˆœ์„œ๊ฐ€ ๋‹ค๋ฅธ ๊ฒฝ์šฐ

public class Account {
    public int add(int a, String b) {
        return a;
    }

    public int add(String b, int a) {
        return a;
    }
}

 


 

 

 

 

+ Recent posts