如何在Java中将对象声明为字段?
我一直收到Java错误如何在Java中将对象声明为字段?,java,constructor,default-constructor,Java,Constructor,Default Constructor,我一直收到Java错误构造函数LocalDate(int,int,int)不可见。我正在尝试创建一个私有字段并初始化它 如何正确执行此操作: 导入java.time.LocalDate; 公开课注册{ 私人注册日期=新的LocalDate.of(0,0,0); } ... 最大的问题可能是您不应该使用new关键字,因为您没有调用LocalDate的构造函数LocalDate.of()只是一个与其他方法一样可以调用的方法 您还应该声明注册日期是什么类型。因此,请尝试: private Local
构造函数LocalDate(int,int,int)不可见。我正在尝试创建一个私有字段并初始化它
如何正确执行此操作:
导入java.time.LocalDate;
公开课注册{
私人注册日期=新的LocalDate.of(0,0,0);
}
...
最大的问题可能是您不应该使用new
关键字,因为您没有调用LocalDate
的构造函数LocalDate.of()
只是一个与其他方法一样可以调用的方法
您还应该声明注册日期是什么类型。因此,请尝试:
private LocalDate registrationDate = LocalDate.of(0,0,0);
试试这个
private LocalDate registrationDate = LocalDate.of(0,0,0);
有两个错误,第一个是您没有声明变量registrationDate
的类型,第二个是这里不需要new
,因为您使用的是LocalDate
类的静态方法。LocalDate。of
是您在Java中所称的静态方法。静态方法不要求您创建类的新版本。相反,他们需要操作的所有东西都通过方法的参数传递到方法中。要解决此问题,请删除new
关键字
您也没有设置registrationDate对象的类型。与Kotlin等可以推断类型的其他语言不同,在Java中,您需要确切地说明类型是什么。为此,您需要在private
和registrationDate
之间放置一个LocalDate
综上所述,应该是这样的:
private LocalDate registrationDate = LocalDate.of(0,0,0);
它没有new
,它是一个静态方法,of
生成一个新对象:=LocalDate.of(0,0,0)
去掉新的
,并为变量提供一个类型。