java - 错误是什么意思?警告 : [static] static method should be qualified by type name, AnchorPane,而不是表达式

标签 java javafx pane

我收到此警告:警告:[静态] 静态方法应由类型名称 AnchorPane 限定,而不是由表达式 限定

这是我的代码:

public Chart(Vector<String[]> v, final Pane p, final AnchorPane ap){
    super();
    this.v = v;
    p.heightProperty().addListener(new ChangeListener<Number>() {
        public void changed(ObservableValue<? extends Number> ov,
        Number old_val, Number new_val) {
            draw();

            System.out.println(heightProperty().doubleValue()+" "+ap.getBottomAnchor(p));

        }
    });
}

最佳答案

AnchorPane.getBottomAnchor() 是一个静态方法。静态方法与类相关联,而不是与实例相关联,因此应该通过它们的类名而不是通过引用来调用。原因是为了避免混淆最终调用哪个方法,因为静态方法不能被覆盖。另见 https://stackoverflow.com/a/2629846/1611055一些好的附加信息。

尝试

System.out.println(heightProperty().doubleValue()+" "+AnchorPane.getBottomAnchor(p));

关于java - 错误是什么意思?警告 : [static] static method should be qualified by type name, AnchorPane,而不是表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14445623/

相关文章:

JavaFX - 如何禁用/关闭 WebViews HTML 渲染器

java - 让 Eclipse 自动尝试在一堆 .java 文件上添加导入

java - 为什么 while 循环中的 if 语句仅在调试时执行?

java - 如何在不改变布局和布局的情况下缩放xml中的节点

javascript - Dojo CodeGlass 有效吗?

java - 有没有办法在 javaFx 应用程序启动时禁用/启用该应用程序中的元素,即 Pane 和按钮

events - JavaFx 按钮事件冒泡

java - 从我的 DTO 创建列表

java - 是什么让线程的执行顺序不可预测?

java - 如何获取 HTMLEditor、JavaFX 中的节点 ID