나는 이것을 읽을 수있다 : http://www.dmc.fmph.uniba.sk/public_html/doc/Java/ch10.htm runnables와 애플릿에 대한 이해를 돕고이 코드를 테스트하기로 결정했다. 그러나 스레드 내에서 repaint() 메서드는 호출되지 않습니다. 대신 내가 할, 그러나실행 가능한 자바에서 다시 칠하기
0
1
2
...
29
:
public class test extends Applet implements Runnable{
int hello;
public void start(){
Thread run = new Thread(this);
run.start();
}
public void run() {
for (int i = 0; i < 30; i++){
hello = i;
repaint();
}
}
public void paint(Graphics g){
System.out.println(hello);
}
}
나는 나의 결과는 무엇인가 것으로 기대
29
29
과 그 이유를 이해하지 않습니다. stop() 메서드가 없기 때문입니까?
빠른 연속으로'repaint()'를 여러번 호출하면 일반적으로 하나의 호출로 통합됩니다. 1) 애플릿을 코딩하는 이유는 무엇입니까? 교사가 지정했기 때문에 [CS 교사가 ** Java 애플릿 교육 **을 중단해야하는 이유] (http://programmers.blogoverflow.com/2013/05/why-cs-teachers-should?hl=ko)를 참조하십시오. -stop-teaching-java-applets /)를 사용합니다. 2) 왜 AWT를 사용합니까? Swing을 위해 AWT 구성 요소를 포기해야하는 많은 이유 때문에 [이 답변] (http://stackoverflow.com/questions/6255106/java-gui-listeners-without-awt/6255978#6255978)을 참조하십시오. –