0

異なるクラス

package battleship;


public class GameSum extends javax.swing.JFrame {


    public GameSum() {
        initComponents();
        J_time.setText(score);
    }



package battleship;

public class GameScreen extends javax.swing.JFrame {


    protected int score;

    public GameScreen() {
        initComponents();

    }   
private void B_checkActionPerformed(java.awt.event.ActionEvent evt) {                                        

       if (score < getHS(0) && score < hs[1])  {setHS(0, score, nickname);  }
       for (int loop = 0; loop<5; loop++)
       {
       if(score > hs[loop] && score < hs[loop+1]) {setHS(loop+1, score, nickname); }   
       }
    }  
4

3 に答える 3

2

変数が公開されていないか、公開ゲッターが利用できないためです。

ゲーム画面で次のようにします。

public int getScore() {
    return score;
}

そして、この関数を GameSum で呼び出します。

ところで、私は失礼に聞こえたくありませんが、これがあなたの実際のインデント/コード規則である場合、それは本当に読み直すことができません. 適切にインデントし、中括弧を使用する場合は if の内容を新しい行に配置し、1 行ブロックの場合は中括弧を使用せずに同じ行に配置します。ちょうど私の2セント。

于 2013-09-11T06:49:23.670 に答える
0

あなたのスコア変数は です。つまり、同じパッケージの子クラスとクラスprotected( ) によってのみアクセスできます。このhttps://stackoverflow.com/a/215505/2291134を参照してくださいGamescreen

于 2013-09-11T06:51:31.653 に答える