基础类库:Calendar类

java.util.Calendar
1.概述
Calendar类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR等日历字段
之间的转换提供了一些方法,并为操作日历字段提供了一些方法。瞬间可用毫秒值来表示,它是距格林威治标准时间
1970年1月1日的00:00:00.000格里高利历的偏移量。
2.获取日历对象
Calendar类是一个抽象类,它提供了一个获得Calendar类型一个通用对象的类方法:Calendar getInstance()
Calendar的getInstance方法返回一个 Calendar对象,其日历字段已由当前日期和时间初始化。
思考一个问题:此处的getInstance方法是怎样建了一个抽象类Calendar对象?
多态,之前遇到很多次,大抵上是这样的思想:多态
abstract class SuperClass{
public static SuperClass getInstance()
{
return new SubClass();
}
}
class SubClass extends SuperClass
{
}
3.成员变量
都是静态int型变量,年月日时分秒分为:YEAR/MONTH/DATE
通过Calendar类的int get(int field)得到各字段的值,如now.get(Calendar.YEAR)
4.成员方法
上面已经提到两个:
Calendar getInstance()和int get(int field)
再有:
abstract void add(int field, int amount)
根据日历的规则,为给定的日历字段添加或减去指定的时间量。
void set(int year, int month, int date)
设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。

package API_ordinary;

import java.util.Calendar;

public class CalendarDemo {

    public static void main(String[] args) {
        //获取Calendar对象,实际是子类对象
        Calendar now=Calendar.getInstance();
        //获取年月日等静态字段
        System.out.println(now.get(Calendar.YEAR));
        //MONTH从0开始,现在是10月份,MONTH为9
        System.out.println(now.get(Calendar.MONTH));
        //DATE:一月中的某天,等于DAY_OF_MONTH
        System.out.println(now.get(Calendar.DATE));
        System.out.println(now.get(Calendar.DAY_OF_MONTH));
        //DAY_OF_WEEK:一星期中的某天,从星期日算起,星期三是第4天
        System.out.println(now.get(Calendar.DAY_OF_WEEK));
        //DAY_OF_YEAR:当前年中的天数
        System.out.println(now.get(Calendar.DAY_OF_YEAR));
        //DAY_OF_WEEK_IN_MONTH:当前月中的第几个星期
        System.out.println(now.get(Calendar.DAY_OF_WEEK_IN_MONTH));
        //HOUR:上午或下午的小时
        System.out.println(now.get(Calendar.HOUR));
        //MINUTE:一小时中的分钟
        System.out.println(now.get(Calendar.MINUTE));
        //SECOND:一分钟的秒
        System.out.println(now.get(Calendar.SECOND));
        //修改日历字段:五年前
        now.add(Calendar.YEAR, -5);
        //设置日历字段
        now.set(2010,9,11); 
    }

}

2016
9
12
12
4
286
2
6
59
4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值