作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Java 新手(了解 OOPS 概念,因为我是 ASP.NET 成员,但过去 2 年没有接触过 Java),正在创建 Tic-Tac-Toe 游戏。
Deleted code here as I am putting my code below.
在这里,我想知道以下几行是如何工作的?
game frame = new game();
frame.setVisible(true);
我理解框架是游戏类的对象,并由 new game() 构造函数初始化,但不理解 .setVisible() 方法如何适用于该对象。
我面临的另一个困难是如何访问其他类或方法中已初始化的对象。
<小时/>你好,我问上一个问题是因为我在这里面临这个困难:首先我将给出代码
public class Game extends JFrame {
private JPanel contentPane;
//private JPanel settingPane;
protected JLabel lblPlayerName2; // I am using this one for my testing
JLabel[] lbls = new JLabel[9];
private final ButtonGroup buttonGroup = new ButtonGroup();
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Game frame = new Game();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Game() {
setTitle("Tic Tac Toe");
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 810, 607);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
contentPane.setName("Tic Tac Toe");
.
.
..
.
.
.
.
.
.
.
.
.
for (int i=0; i<lbls.length; i++) {
lbls[i] = new JLabel(""+(i+1));
lbls[i].addMouseListener(new AllbtnBehvr());
lbls[i].setFont(new Font("Trebuchet MS", Font.BOLD, 95));
lbls[i].setHorizontalAlignment(SwingConstants.CENTER);
lbls[i].setBorder(new LineBorder(new Color(0, 0, 0), 2));
panelGameArea.add(lbls[i]);
}
.
.
.
.
.
.
.
.
.
.
.
.
} // End of Game()
class AllbtnBehvr implements MouseInputListener{ //Created this class as SubClass of Game Class
@Override
public void mouseClicked(MouseEvent src) {
// TODO Auto-generated method stub
JLabel b = (JLabel) src.getSource();
lblPlayerName2.setText(b.getText());
. }
...
.
.
.
.
.
.
} // End of AllbtnBehvr
}// End of Game Class
在这里,我观察到,变量'lblPlayerName2'和lbls[]定义在Game()构造函数之外,并且可以访问它,但不能访问Game()内部的其他变量。在这里我想问一下,
如何访问 Game() 内的变量?和如果我在 Game 类之外创建类,如何访问 Game() 内的变量?
最佳答案
游戏扩展了 JFrame,而 JFrame 又扩展了 java.awt.Window,因此 inherits its methods .
PS。类应以首字母大写命名。游戏
。
关于java - 如何在 Java Eclipse 中访问数据字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13134711/
我是一名优秀的程序员,十分优秀!