关于Calendar类的实例化问题
来源:互联网 发布:怎么限制软件联网 编辑:程序博客网 时间:2024/06/06 21:00
复习到Calendar类的时候,产生了一些疑问并通过查阅api文档搞清楚了一些问题
Calendar中包含了一些字段,这些字段中很多表示时间的字段都是采用了 final static修饰符修饰,并在声明了时候进行了初始化,作为类的常量存在
之前的疑问:为什么不能直接通过对象名(c)或类名(Calendar)来直接访问这些字段从而获取时间信息?
于是进行了以下实验,发现通过set方法设置了年份,月份和日后,通过类名访问到的都是初始化时候的常量,而通过get()方法才能获取到所需的时间信息,
既然这些表示时间的字段作为常量存在,并且呈现出规律的自然数排列,1,2,3,4...,是否存在什么意义?api文档Calendar类还包括了一个fields[]数组,而这些常量则
正好作为该数组的下标,通过查阅源码,发现get()方法是通过这个数组和下标来返回该时间信息,在获取实例对象的时候,当前时间对这个数组进行了初始化
import java.util.*;
class CalendarDemo{public static void main(String[] args){Calendar c = Calendar.getInstance();//<span style="font-family: Arial, Helvetica, sans-serif;">Calendar类通过getInstance()获取实例对象</span>c.set(2016,7,23,15,40,20);//sop(c);sop(Calendar.YEAR+"年");
<pre name="code" class="java"><span style="white-space:pre"></span>sop(Calendar.MONTH+"月");
<span style="white-space:pre"></span><pre name="code" class="java"><span style="white-space:pre"></span>sop(Calendar.DAY_OF_MONTH+"日");
<span style="white-space:pre"></span><pre name="code" class="java"><span style="white-space:pre"></span>sop(Calendar.HOUR_OF_DAY+"时");
<span style="white-space:pre"></span><pre name="code" class="java"><span style="white-space:pre"></span>sop(Calendar.MINUTE+"分");
<span style="white-space:pre"></span> sop(Calendar.SECOND+"秒");sop(c.get(Calendar.YEAR)+"年");
<span style="white-space:pre"></span>sop(c.get(Calendar.MONTH)+"月");<span style="white-space:pre"></span>sop(c.get(Calendar.DAY_OF_MONTH)+"日");<span style="white-space:pre"></span>sop(c.get(Calendar.HOUR_OF_DAY)+"时");<span style="white-space:pre"></span>sop(c.get(Calendar.MINUTE)+"分");<span style="white-space:pre"></span>sop(c.get(Calendar.SECOND)+"秒");
}public static void sop(Object obj){System.out.println(obj);}}
0 0
- 关于Calendar类的实例化问题
- 【Java】日期Calendar类关于星期的问题
- 关于Calendar控件的不可用问题/
- 关于java Calendar的一些问题
- Java之Calendar类的使用实例
- Calendar类使用实例
- 关于Calendar类的一些应用
- 一个关于日期处理的类:Calendar。
- 关于Calendar类的日与月
- 第十一天 关于Calendar类的操作
- 关于Calendar工具类的使用
- 关于calendar的compareto
- 关于Calendar的使用
- 关于Calendar类的compareTo方法比较两个时间不相等的问题
- 关于Calendar.WEEK_OF_YEAR中西方约定不同的问题
- 关于Calendar导致的跨年时间问题
- Java关于抽象类能否被实例化的问题
- 日期类Calendar遇到的问题总结
- poj 1004
- Linux下进程管理
- centos6.6安装zabbix2.4.4
- 协方差的意义和计算公式
- spring的声明式事务
- 关于Calendar类的实例化问题
- JasperReports
- 删除特定字符串
- VS常用编译平台与制作工具
- hdu 1730 Northcott Game Nim博弈~~
- 利用Theme自定义Activity间的切换动画
- 为什么同样是程序员,大牛工资1W,而自己只能拿区区的3K?
- 二叉查找树相关
- [shell脚本]逐行处理文本