Java 无法从主类调用方法?

Java 无法从主类调用方法?,java,variables,Java,Variables,我正在尝试制作一个网络浏览器,下面是我的代码 代码: 下面是我的错误消息: browserPannel.java:38: error: non-static method loadHtml(JEditorPane,JTextField, String) cannot be referenced from a static context loadHtml(htmlc, url, event.getActionComm

我正在尝试制作一个网络浏览器,下面是我的代码

代码:

下面是我的错误消息:

browserPannel.java:38: error: non-static method loadHtml(JEditorPane,JTextField,
String) cannot be referenced from a static context
                                        loadHtml(htmlc, url, event.getActionComm
and());
                                        ^
1 error

正如您所知,它从loadHtml中获取错误,loadHtml是在我的代码按钮处的方法中定义的,现在如果我删除loadHtml,它将显示println(“执行的操作”);,但是,只有当我引用loadHtml时,它才表示非静态方法不能在静态方法中执行。

正确。您需要类的一个实例
browserPannel
来调用该方法

browserPannel bp = new browserPannel();
bp.loadHtml(htmlc, url, event.getActionCommand());
或者你可以

private void loadHtml(JEditorPane htmlc, JTextField url, String link)
静态
,如

private static void loadHtml(JEditorPane htmlc, JTextField url, String link)
编辑

另外,Java camel case约定将您的类命名为
BrowserPanel
(我建议您遵循该约定)。

正如您从main方法调用“loadHtml”一样,您必须执行以下任一操作:-

1) 使用
browserPannel
类的对象调用loadHtml或

2) 您需要loadHtml方法是静态的

记住规则
static,同一个类中可以直接从main方法调用


干杯

您是否费心搜索关于从静态上下文引用非静态方法的其他问题?这个问题已经被问了很多次了!
private static void loadHtml(JEditorPane htmlc, JTextField url, String link)