如何在一个类使用另外一个类的变量?
我希望点一次MINUS就能让环上的小圆少一个 但是JosephP又需要用到JosephAwt的变量n 但是怎么用呢?
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
class JosephAwt extends JFrame implements ActionListener{
public JosephAwt(){
add(bu1,BorderLayout.SOUTH);
add(p,BorderLayout.CENTER);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400,500);
setVisible(true);
}
int n=8;
/* public int getN(){
return n;
}*/
Graphics g;
JosephP p=new JosephP();
JButton bu1=new JButton("MINUS");
public void actionPerformed(ActionEvent e){
if(e.getSource()==bu1)
n--;
p.paint(g);
}
public static void main(String[] args){
JosephAwt f = new JosephAwt();
}
}
class JosephP extends JPanel{
//JosephAwt f = new JosephAwt();
static double PI=3.1415926;
int x=50;
int y=70;
int rbig=150;
int xCenterB=x+rbig;//大圆圆心
int yCenterB=y+rbig;
int rsmall=30;
int xCenterS,yCenterS;
int n=8;//小圆个数
public void paint(Graphics g) {
g.drawOval(x,y,2*rbig,2*rbig);
for(int i=0;i<n;i++){
xCenterS=xCenterB+(int)Math.round(rbig*Math.sin(2*PI*i/n));
yCenterS=yCenterB+(int)Math.round(rbig*Math.cos(2*PI*i/n));
g.setColor(Color.red);
g.drawOval(xCenterS-rsmall, yCenterS-rsmall, 2*rsmall, 2*rsmall);
g.setFont(new Font("",Font.BOLD,23));
g.drawString(""+i,xCenterS,yCenterS);
}
}
}