「staticでない…」について
今,下記のプログラムを実行させたいのですが,次のエラーが出て困っています。基本的なことだと思いますが,つまずいて修復できません。
どのような対処をすればよいでしょうか。
エラー:「staticでない変数thisをstaticコンテキストから参照することができません。」
プログラム
import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
import java.util.*;
public class Test{
public static int R,G,B;
public static void main (String[] args){
R = Integer.parseInt(args[0]);
G = Integer.parseInt(args[1]);
B = Integer.parseInt(args[2]);
MyFrame frame = new MyFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true); }
class MyFrame extends JFrame{
public static final int WIDTH = 400;
public static final int HEIGHT = 400;
public MyFrame(){
setTitle("Test");
setSize(WIDTH,HEIGHT);
Container contentPane = getContentPane();
MyPanel panel = new MyPanel();
contentPane.add(panel);}}
class MyPanel extends JPanel{
public void paintComponent(Graphics g){
super.paintComponent(g);
Graphics2D g2 = (Graphics2D)g;
Rectangle2D rect = new Rectangle2D.Double(100,100,100,50);
g2.setColor(new Color(R,G,B));
g2.fill(rect);}}}
お礼
お礼が遅くなりすいません。 なるほど、staticでいいものは無理にインスタンスメソッドにしなくてもいいんですね、ありがとうございました。