JAVA萌新提问05:关于日期类Date的用法以及在构造方法里创建对象??????

图片说明图片说明图片说明图片说明
如图所示,第一张图中我在类中定义好了一个日期属性,然后在构造方法中写了一行 dateCreated=new java.util.Date();的代码,根据我之前学习的对象语法来看,“new”出现,说明我在该构造方法中创建了一个对象(引用),第三张图片 是在测试中调用了dateCreated的get方法,成功返回了我想看到的时间。
但是在我没有在构造里写 dateCreated=new java.util.Date();之前,以正常的操作来调用结果为输出了null,我大概知道这是表明空指针异常的意思,那就说明这个dateCreated啥都没有。
其实我上面表达的意思有点混乱,其实我就是不明白为什么加上 dateCreated=new java.util.Date();后就可以输出了,我就当是创建对象吧,但是对象还可以在构造方法里创建????以及我的public java.util.Date getDateCreated(){

return dateCreated;
}

这个创建方法的格式和常规的语法又不一样,没有基本类型,也没有viod,这个在我看来特殊的方法是date类里自带的方法吗?以及对象可以在构造方法里创建:1.可以使用本类在本类的构造方法里直接创建本类的实例吗?
2.日期本身不属于我的类,但是我却以导包的形式让它变成了我创建我类的属性,在构造中我定义的那个日期对象本身到底是属性(我的类)?还是对象(日期类)?
请原谅这次写的比较混乱,还望前辈们指教一下!
自闭的萌新感激不尽~

1.可以在本类的构造方法里直接创建本类的实例,但是不能用当前构造方法,可以其实其它构造方法
2.你的日期对象就是类的属性啊,date本身就是一个对象,一个对象作为另一个对象的属性,没什么问题啊

1 构造方法里可以创建实例, public java.util.Date getDateCreated()这个方法不是创建 date 而且返回一个已经定了的date对象,所以你没赋值前他是null
2 date本身是个类,引入到你自己的类后变成某个属性的类型,dateCreated是你本类中的属性 Date本身是另一个类,两者不冲突