저는 Java에 익숙하지 않습니다. 저는 시저 전환 코드 디코더를 작성하는 데 어려움을 겪고 있습니다. 기본적으로 다른 클래스에서 JTextArea를 삭제하려고합니다. 두 클래스, CrackerGUI라는 GUI 클래스와 교대 클래스가 있습니다. JTextArea에는 다음과 같은 방법과 함께 GUI 클래스에 있습니다다른 클래스에서 JTextArea 지우기
public void setPlainTextBox(String text)
{
plainTextBox.setText(text);
}
그래픽 사용자 인터페이스 클래스는 또한 다음과 클리어 버튼이 있습니다
private void btnClearActionPerformed(java.awt.event.ActionEvent evt) {
Shift classShift = new Shift();
classShift.btnClear();
}
가 마지막으로 내가 취소 시프트 클래스의 메소드가를 JTextArea.
public class Shift extends CrackerGUI {
public void btnClear()
{
CrackerGUI gui = new CrackerGUI();
gui.setPlainText(" ");
System.out.println("testing");
}
}
테스트 텍스트가 콘솔로 인쇄되고 있지만 JTextArea는 분명하지 않습니다. 나는 왜 그런지 확신하지 못합니다. 나는 그것이 매우 단순한 실수라고 확신하지만 그것은 당황 스럽다. 어떤 도움을 주시면 감사하겠습니다.
미리 감사드립니다.
번호
당신은 당신의 시프트에 GUI 인스턴스를 전달해야목욕물에 아기를 던지지 마십시오. OOP 기술을 사용하여 훨씬 쉽게 해결할 수있는이 문제를 해결하기 위해 정적 인 것을 사용하여 OOP 프로그래밍을 버리지 마십시오. –
내가 대체물이 있다고 말했을 때 거시기가 될 필요는 없다. – Matt
@ Firexranger8 : 정적 솔루션이 좋지 않습니다. 또한, 내부 클래스를 제외하고는 Java에 정적 클래스가 없습니다. 그리고 당신의 대안은 전혀 말이되지 않습니다. 아, 그리고 당신도 무례 해요. –