이 프로그램이 작동하지 않는 이유는 무엇입니까?

니틴

다음 프로그램을 이해할 수있는 한 폴리곤을 만드는데 왜 작동하지 않습니까? 이것은 다른 클래스에서 drawPolygon 함수에 대한 인수를받습니다.

package test1;

import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Sc extends JPanel {
    int[] xpoints=new int[10];
    int[] ypoints=new int[10];
    int npoints;

    public void method(int a[],int b[], int num){
        xpoints=a;
        ypoints=b;
        npoints=num;
    }

    private static final long serialVersionUID = 1L;

    public void paint(Graphics g) {
        g.drawPolygon(xpoints, ypoints, npoints);
    }

    public static void main(String[] args) {
        MainClass mc = new MainClass();
        mc.fun();
        JFrame frame = new JFrame();
        frame.getContentPane().add(new Sc());

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(200,200);
        frame.setVisible(true);
      }  
}

이것은 MainCLass.java입니다.

package test1;

public class MainClass {
    int x[] = {25, 145, 25, 145, 25};
    int y[] = {25, 25, 145, 145, 25};
    int npoints = 5;

    public void fun(){
    Sc sc = new Sc();
    sc.method(x,y,npoints);
    }
}

나는이 코드를 보았지만 무엇이 잘못되었는지 모르겠습니다. 나는 Java를 처음 사용합니다. 누군가 나를 도울 수 있습니까? 미리 감사드립니다.

에릭 F.

코드가 정말 지저분하고 읽기 쉽지 않지만 문제는 그림을 그리는 대신 다른 Sc 인스턴스를 창에 추가한다는 것입니다.

frame.getContentPane().add(new Sc());

대신 정적 메서드에서 수행 할 수없는 "this"를 추가해야하지만 Sc 인스턴스를 만들고 메서드로 초기화 할 수 있습니다.

public static void main(String[] args) {

    Sc sc = new Sc();
    MainClass mc = new MainClass();
    mc.fun(sc);
    sc.initFrame();

}

public void initFrame() {
    JFrame frame = new JFrame();
    frame.getContentPane().add(this);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(200, 200);
    frame.setVisible(true);
}

또한 sc를 "fun"메소드의 인수로 가져와야합니다 (그런 다음 sc 객체에서 "method"메소드를 호출합니다 ... 다시 한 번이 작업은 훨씬 덜 혼란스러운 하나의 클래스에서만 수행 할 수 있습니다).

public void fun(Sc sc){
    sc.method(x,y,npoints);
}

이것은 여전히 ​​정말 지저분하지만 적어도 지금은 작동합니다.)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

이 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

yield from을 사용하는이 Python 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

"for"루프가 작동하지 않고 프로그램이 중지되는 이유는 무엇입니까?

분류에서Dev

입력 스캐너와 나머지 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

이 프로그램 (두 행렬의 곱)이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

이 프로그램이 Android Virtual Device에서 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 프로그램이 파이썬에서 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 파이썬 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

이 Digits Display 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

이 재귀 프로그램이 작동하는 이유는 무엇입니까?

분류에서Dev

내 Arch Linux 완전 자동 설치 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 프로그램이 부동 변수와 함께 작동하지 않는 이유는 무엇입니까?

분류에서Dev

이 프로그램에서 자동 마운트가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 fizzbuzz 프로그램이 제대로 작동하지 않는 이유는 무엇입니까?

분류에서Dev

첫 번째 파이썬 재귀 프로그램이 작동하지 않은 이유는 무엇입니까?

분류에서Dev

PHP curl이 응용 프로그램 / json 게시에서 작동하지 않는 이유는 무엇입니까?

분류에서Dev

MSI (Windows Installer) 설치 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

단순 종료 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

AngularJS의 HelloWorld 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 C ++ 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

Python의 front_back 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

대부분의 설치 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 응용 프로그램이 작동하지 않는 이유는 무엇입니까?

분류에서Dev

이 프로그램이 실행되지 않는 이유는 무엇입니까?

분류에서Dev

중첩 된 'for'루프가 아래 프로그램에서 작동하지 않는 이유는 무엇입니까?

분류에서Dev

Matlab의 프로그램에서 ismember가 제대로 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 프로그램이 작동을 "중지"한 이유는 무엇입니까?

분류에서Dev

@Transactional 롤백 봄 부팅 응용 프로그램에서 작동하지 않는 이유는 무엇입니까?

분류에서Dev

내 tkinter 프로그램에서 destroy () 메서드가 작동하지 않는 이유는 무엇입니까?

Related 관련 기사

  1. 1

    이 프로그램이 작동하지 않는 이유는 무엇입니까?

  2. 2

    yield from을 사용하는이 Python 프로그램이 작동하지 않는 이유는 무엇입니까?

  3. 3

    "for"루프가 작동하지 않고 프로그램이 중지되는 이유는 무엇입니까?

  4. 4

    입력 스캐너와 나머지 프로그램이 작동하지 않는 이유는 무엇입니까?

  5. 5

    이 프로그램 (두 행렬의 곱)이 작동하지 않는 이유는 무엇입니까?

  6. 6

    이 프로그램이 Android Virtual Device에서 작동하지 않는 이유는 무엇입니까?

  7. 7

    내 프로그램이 파이썬에서 작동하지 않는 이유는 무엇입니까?

  8. 8

    내 파이썬 프로그램이 작동하지 않는 이유는 무엇입니까?

  9. 9

    이 Digits Display 프로그램이 작동하지 않는 이유는 무엇입니까?

  10. 10

    이 재귀 프로그램이 작동하는 이유는 무엇입니까?

  11. 11

    내 Arch Linux 완전 자동 설치 프로그램이 작동하지 않는 이유는 무엇입니까?

  12. 12

    내 프로그램이 부동 변수와 함께 작동하지 않는 이유는 무엇입니까?

  13. 13

    이 프로그램에서 자동 마운트가 작동하지 않는 이유는 무엇입니까?

  14. 14

    내 fizzbuzz 프로그램이 제대로 작동하지 않는 이유는 무엇입니까?

  15. 15

    첫 번째 파이썬 재귀 프로그램이 작동하지 않은 이유는 무엇입니까?

  16. 16

    PHP curl이 응용 프로그램 / json 게시에서 작동하지 않는 이유는 무엇입니까?

  17. 17

    MSI (Windows Installer) 설치 프로그램이 작동하지 않는 이유는 무엇입니까?

  18. 18

    단순 종료 프로그램이 작동하지 않는 이유는 무엇입니까?

  19. 19

    AngularJS의 HelloWorld 프로그램이 작동하지 않는 이유는 무엇입니까?

  20. 20

    내 C ++ 프로그램이 작동하지 않는 이유는 무엇입니까?

  21. 21

    Python의 front_back 프로그램이 작동하지 않는 이유는 무엇입니까?

  22. 22

    대부분의 설치 프로그램이 작동하지 않는 이유는 무엇입니까?

  23. 23

    내 응용 프로그램이 작동하지 않는 이유는 무엇입니까?

  24. 24

    이 프로그램이 실행되지 않는 이유는 무엇입니까?

  25. 25

    중첩 된 'for'루프가 아래 프로그램에서 작동하지 않는 이유는 무엇입니까?

  26. 26

    Matlab의 프로그램에서 ismember가 제대로 작동하지 않는 이유는 무엇입니까?

  27. 27

    내 프로그램이 작동을 "중지"한 이유는 무엇입니까?

  28. 28

    @Transactional 롤백 봄 부팅 응용 프로그램에서 작동하지 않는 이유는 무엇입니까?

  29. 29

    내 tkinter 프로그램에서 destroy () 메서드가 작동하지 않는 이유는 무엇입니까?

뜨겁다태그

보관