읡λͺ… 클래슀(읡λͺ… 객체) λž€?
2025. 1. 19. 16:21

읡λͺ….. 이름이 μ—†λ‹€.. λ³„λ‘œ κΈ°μ–΅λ˜μ§€ μ•Šμ•„λ„ 됨.. λ‚˜μ€‘μ— λ‹€μ‹œ 뢈러질 μ΄μœ κ°€ μ—†λ‹€..

즉, ν”„λ‘œκ·Έλž¨μ—μ„œ μΌμ‹œμ μœΌλ‘œ ν•œλ²ˆλ§Œ μ‚¬μš©λ˜κ³  λ²„λ €μ§€λŠ” 객체, μž¬μ‚¬μš©λ˜μ§€ μ•ŠμŒ

 

읡λͺ… ν΄λž˜μŠ€λŠ” μ„ μ–Έκ³Ό λ™μ‹œμ— μΈμŠ€ν„΄μŠ€ν™” λœλ‹€! = 읡λͺ… 객체

읡λͺ… ν΄λž˜μŠ€λŠ” 주둜 λ‹¨μˆœν•œ μΈν„°νŽ˜μ΄μŠ€ κ΅¬ν˜„μ΄λ‚˜, μΆ”μƒν΄λž˜μŠ€ ν™•μž₯에 μ‚¬μš©λœλ‹€!

이λ₯Ό 잘 ν™œμš©ν•˜λ©΄ μ½”λ“œλ₯Ό κ°„κ²°ν•˜κ³  λͺ…ν™•ν•˜κ²Œ λ§Œλ“¦

 

읡λͺ… 클래슀λ₯Ό μ‚¬μš©ν•˜λŠ” 이유

- ν”„λ‘œκ·Έλž¨ λ‚΄μ—μ„œ μΌμ‹œμ (λ‹¨λ°œμ„±)으둜 ν•œλ²ˆλ§Œ μ‚¬μš©λ˜μ–΄μ•Ό ν•˜λŠ” 객체일 경우

- μž¬μ‚¬μš©μ΄ μ—†κ³ , ν™•μž₯성을 ν™œμš©ν•˜λŠ”κ²ƒμ΄ μœ μ§€λ³΄μˆ˜μ— 더 λΆˆλ¦¬ν•  λ•Œ (클래슀λ₯Ό λ³„λ„λ‘œ λ§Œλ“€ ν•„μš”μ—†μ΄ μ½”λ“œμ—μ„œ 읡λͺ…객체λ₯Ό 생성/μ •μ˜ν•˜μ—¬ λ‹¨ ν•œλ²ˆμ˜ μ“°μž„μ„ λ‹€ν•˜κ³  μ†Œλ©Έ)

 

읡λͺ…객체(읡λͺ…ν΄λž˜μŠ€) κ΅¬ν˜„ν•˜λŠ” 방법 

 

1. λΆ€λͺ¨λ₯Ό 상속받은 μžμ‹ 읡λͺ… 클래슀 μ„ μ–Έ (μΆ”μƒν΄λž˜μŠ€ ν™•μž₯)

public class test {
   public static void main(String[] args) throws IOException {
    	Car car = new Car() {
			String carName = "benz";
            
            @Override 
            public void Go() {
            	System.out.println(carName + "달린닀!");
            }
	};	
	car.Go();
    
        Object object = new Object() {
            @Override 
                public String toString() {
                    return "읡λͺ… 객체 μž…λ‹ˆλ‹€"
                }
        };

        System.out.println(object.toString());
    
    }
}

class Car {
	public void Go() {
		System.out.println("달린닀!");
	}
}

 

2. μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•œ 읡λͺ… 클래슀 μ„ μ–Έ

public interface Car {
	void Go();
	void Back();
}
import java.io.IOException;
import inter.Car;

public class test {
	public static void main(String[] args) throws IOException {
    	Car car = new Car() {
			String carName = "benz";
            
            @Override 
            public void Go() {
            	System.out.println(carName + "달린닀!");
            }
            
            @Override 
            public void Back() {
            	System.out.println(carName + "ν›„μ§„ν•œλ‹€!");
            }
		};
		
		car.Go();
		car.Back();
    
    }
}

 

 

읡λͺ… ν΄λž˜μŠ€λ„ μ‚¬μš©ν•˜κΈ΄ ν•˜μ§€λ§Œ 이λ₯Ό 더 κ°„λž΅ν™”ν•œ λžŒλ‹€μ‹(읡λͺ… ν•¨μˆ˜)을 더 많이 μ‚¬μš©ν•œλ‹€.