답변 3
1
프로젝트 내에 혹시 Thread 라는 이름으로 클래스를 별도로 정의하신 곳이 있나요?
제가 임의로 class Thread { } 를 정의하니 동일한 현상이 나와지는 것 같습니다. Thread 라고 이름을 짓게 되면 java.lang 패키지에 있는 Thread 를 의미하는 것인지, 또는 프로젝트 내에 별도로 만든 Thread 를 의미하는 것인지 모호하여 java.lang 을 반드시 추가해야 할 수도 있답니다.
코드에서 Thread 를 입력하였을 때 나타나는 목록 중에서 java.lang 이 아닌 다른 패키지가 있는지 확인해보시고 있다면 해당 클래스를 삭제하거나 다른 이름으로 변경해주셔야 합니다. 삭제 또는 이름 변경이 어려우신 경우 java.lang 을 붙여서 Thread 를 사용하시는 것도 좋습니다 😊
감사합니다.
0
CleanRunnable 클래스가 잘못 작성된 것으로 보이네요.
클래스 정의를 할 때 implements Runnable 부분을 빼먹으신 건 아닌지 확인 부탁드려요.
(잘못된 코드)
public class CleanRunnable {
...
}
(올바른 코드)
public class CleanRunnable implements Runnable {
...
}
수정 후에도 되지 않으신다면 CleanRunnable 코드를 전체 복사 붙여넣기 해서 다시 질문글 남겨주세요 😊
감사합니다.
package chap_12.clean;
public class CleanRunnable implements Runnable {
@Override
public void run() {
System.out.println("직원 청소 시작");
for (int i = 2; i <= 10; i+=2) {
System.out.println(i +"번방 청소 중(Runnable)");
}
System.out.println("직원 청소 완료");
}
}
Thread입력할때 인텔리제이 자동완성으로 여러가지 나오잖아요? 강의에서 처럼 Thread
입력할때 java.lang 써져있는거 자동으로 엔터하면 java.lang.Thread thread 이렇게 바껴요 ㅠㅠ
우와 정말 수정하니 됐어요. 제가 강의듣고 복습해보면서 _01_Thread 해야 되는데 그냥 Thread 로 했더군요 ㅠㅠ 정말 감사합니다!!!