작성
·
187
답변 1
1
안녕하세요?
람다식을 사용하지 않고 Runnable 을 구현하려면 이렇게 할 수 있습니다.
Runnable runnable1 = new Runnable() {
@Override
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println("A 상품 준비 " + i + "/5");
}
System.out.println(" -- A 상품 준비 완료 -- ");
}
};
위 코드는 람다식을 이용하지 않고 익명 클래스를 직접 구현한 것인데요. 익명 클래스 또한 사용하지 않으려면 다음과 같이 별도의 클래스를 정의하고 Runnable 인터페이스를 구현하여 run() 메서드를 정의하는 방법도 있습니다.
public class MyRunnable implements Runnable {
@Override
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println("A 상품 준비 " + i + "/5");
}
System.out.println(" -- A 상품 준비 완료 -- ");
}
}
// main() 에서 사용 예시
Runnable runnable1 = new MyRunnable();
궁금증 해결에 도움되길 바라겠습니다 😊
감사합니다.
죄송합니다... 제가 잘 몰라서요...
이 상태 처럼 쓰려고 하는데 이 상태로 쓰려고하면 new Runnable() 이 부분이 회색변해버리고
Thread thread = new Thread(
runnable1
)이 쓰레드에 넣을때 runnable1 이 없다고 뜨고
thread.
start
(); 다른 쓰레드 start들 모두 빨간색으로 뜨네요 왜이런걸까요ㅠㅠ