gpt4 book ai didi

java - 如何满足 Java 编译器设置 SimpleObjectProperty 的未经检查的警告

转载 作者:行者123 更新时间:2023-11-30 02:55:00 25 4
gpt4 key购买 nike

我有这门课:

package mydate;

import java.util.Date;
import javafx.beans.property.ObjectProperty;
import javafx.beans.property.SimpleObjectProperty;

public class MyDate {
private final ObjectProperty<Date> theDate;

public MyDate(Date d) { theDate = new SimpleObjectProperty<>(d); }

public ObjectProperty theDateProperty() { return theDate; }

public Date getTheDate() { return (Date)theDateProperty().get(); }
//@SuppressWarnings("unchecked")
public void setTheDate(Date value) { theDateProperty().set(value); }
}

这是一个使用它的简单应用程序:

package unchecked;
import java.util.Date;
import mydate.*;

public class Unchecked {

public static void main(String[] args) {
MyDate myDate = new MyDate(new Date(0));
System.out.println(myDate.getTheDate().toString());
}
}

我想知道是否有办法让编译器对setTheDate满意。我可以抑制未经检查的警告,但我想知道在使用 ObjectProperty 和 SimpleObjectProperty 时是否可以做一些合理的事情来避免未经检查的警告。我尝试了一些方法,谷歌搜索很接近,但还不够接近,不足以让我弄清楚这一点。

最佳答案

ObjectProperty<Date>是参数化类型。您正确声明了实例变量类型( ObjectProperty<Date> ),但没有在从方法 theDateProperty() 返回的参数化类型中声明类型参数。 。该方法应该这样声明:

public ObjectProperty<Date> theDateProperty()

之后,所有警告都消失了。

关于java - 如何满足 Java 编译器设置 SimpleObjectProperty 的未经检查的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37513048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com