在构造函数中初始化日历

收藏夹:

如果我这样做:

new Estimacao("Aarão","Affenpinscher","Abóbora",new GregorianCalendar(1999,7,26),0),

一切都按预期工作。但是,如果我这样做:

new Estimacao("Aarão","Affenpinscher","Abóbora",new Calendar(1999,7,26),0),

可以办到。我所知道的。我们必须像这样初始化日历:

Calendar date = Calendar.getInstance();
date.set(Calendar.YEAR, 1999);
date.set(Calendar.MONTH, 7);
date.set(Calendar.DAY_OF_MONTH, 26);

我想知道的是,如上所述,在创建和初始化对象时是否可以使用Calendar,并实现与相同的效果GregorianCalendarnew Estimacao

戴夫·约翰斯顿:

Calendar是一个Abstract类,因此您无法创建它的实例。当您调用getInstance时,它实际上返回一个新的GregorianCalendar实例。因此,这与您的第一个示例相同。

所以我想问题是,为什么要调用新日历而不是新的GregorianCalendar?如果只是为了隐藏您正在使用的实现,那么我要么只是做您已经完成的初始化日历的工作。或者创建一个采用相同参数并隐藏对Calendar类的调用的方法,例如

public Calendar getCalendar(int day, int month, int year) {
    Calendar date = Calendar.getInstance();
    date.set(Calendar.YEAR, year);

    // We will have to increment the month field by 1

    date.set(Calendar.MONTH, month+1);

    // As the month indexing starts with 0

    date.set(Calendar.DAY_OF_MONTH, day);

    return date;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Java

如何在构造函数中初始化对象数组?

来自分类Java

在构造函数或声明中初始化类字段?

来自分类Java

序列化在构造函数中初始化的映射

来自分类Java

在Java中的构造函数之前初始化最终变量

来自分类Java

在构造函数中初始化空实例变量

来自分类Java

变量未在默认构造函数中初始化

来自分类Dev

memset()初始化构造函数中的对象?

来自分类Dev

构造函数初始化列表中的循环依赖

来自分类Dev

Kotlin:在构造函数中初始化类属性

来自分类Dev

在构造函数或声明中初始化变量

来自分类Dev

在构造函数与状态中初始化状态

来自分类Dev

在构造函数中初始化静态函数指针

来自分类Dev

为什么final可以在构造函数中初始化?

来自分类Dev

C ++在构造函数中初始化对象(多态)

来自分类Dev

如何在构造函数中初始化char

来自分类Dev

更改后在构造函数中初始化const变量

来自分类Dev

初始化后在构造函数中调用方法

来自分类Dev

在构造函数中初始化静态字段

来自分类Dev

Java构造函数中类变量的初始化

来自分类Dev

在构造函数中初始化Enum变量

来自分类Dev

C ++-在构造函数中初始化指针数组

来自分类Dev

在构造函数中初始化流

来自分类Dev

在类构造函数中初始化const向量(C ++)

来自分类Dev

如何在默认构造函数中初始化数组?

来自分类Dev

如何访问在构造函数(JAVA)中初始化的对象?

来自分类Dev

在类本身中初始化 TypeScript 变量与在构造函数中初始化的区别

来自分类Dev

C++ - 构造函数中的 std::vector 初始化

来自分类Dev

在构造函数 C++ 中初始化结构向量

来自分类Dev

cppcheck:构造函数中未初始化的成员变量

Related 相关文章

热门标签

归档