Public 2 中的私有变量连接问题 Java 类
Public private variable connection issue in 2 Java Classes
我有两个文件,Display.java
(第一个)和 Lancher.java
(第二个)。他们都在同一个项目下,但是两个不同的 类。我想要一个显示图像,但是 Launcher 文件的宽度和高度出现错误。我不知道为什么,因为 Display
文件中的宽度和高度都是 public
。
import javax.swing.*;
import java.awt.*;
public class Display extends JFrame {
private Canvas canvas;
public Display(int width, int height) {
setTitle("Game");
setDefaultCloseOperation(EXIT_ON_CLOSE);
//Process will still be running but application closes when cross is pressed
setResizable(false);
canvas = new Canvas();
canvas.setPreferredSize(new Dimension(width, height));
//Set size to pass in with dimension
canvas.setFocusable((false));
add(canvas);
pack();
//Add canvas to display & calculate size of display frame
setLocationRelativeTo (null);
//To open frame in the center of screen as opposed to side
setVisible(true);
}
}
Launcher.java
public class Launcher {
public static void main(String[] args) {
Display display = new Display( width: 800, height: 600);
}
}
Launcher
class 中 Display
对象的初始化语法无效。这将是初始化它的正确方法:
Display display = new Display(800, 600);
注意参数 names/identifiers 在将值传递到对象的构造时未使用。
width
和 height
是参数名称。 Java 没有命名参数,只有位置参数。换句话说,在对构造函数的调用中删除标签,你应该没问题:
public class Launcher {
public static void main(String[] args) {
Display display = new Display(800, 600);
}
}
我有两个文件,Display.java
(第一个)和 Lancher.java
(第二个)。他们都在同一个项目下,但是两个不同的 类。我想要一个显示图像,但是 Launcher 文件的宽度和高度出现错误。我不知道为什么,因为 Display
文件中的宽度和高度都是 public
。
import javax.swing.*;
import java.awt.*;
public class Display extends JFrame {
private Canvas canvas;
public Display(int width, int height) {
setTitle("Game");
setDefaultCloseOperation(EXIT_ON_CLOSE);
//Process will still be running but application closes when cross is pressed
setResizable(false);
canvas = new Canvas();
canvas.setPreferredSize(new Dimension(width, height));
//Set size to pass in with dimension
canvas.setFocusable((false));
add(canvas);
pack();
//Add canvas to display & calculate size of display frame
setLocationRelativeTo (null);
//To open frame in the center of screen as opposed to side
setVisible(true);
}
}
Launcher.java
public class Launcher {
public static void main(String[] args) {
Display display = new Display( width: 800, height: 600);
}
}
Launcher
class 中 Display
对象的初始化语法无效。这将是初始化它的正确方法:
Display display = new Display(800, 600);
注意参数 names/identifiers 在将值传递到对象的构造时未使用。
width
和 height
是参数名称。 Java 没有命名参数,只有位置参数。换句话说,在对构造函数的调用中删除标签,你应该没问题:
public class Launcher {
public static void main(String[] args) {
Display display = new Display(800, 600);
}
}