我们以获取电脑系统中的年为例0。首先我们必须的知道Java.nuti包中的Canlendar类 ,故我们在使用Canlengdar类时候需要导入Java.lennuti包,不然会报错,一般思维肯定会直接调用get()方法,其实是行不通的,因为在Calendar类中get()方法的访问权限是protacted故不能直接调用,应调getInstance(),建议把它做成静态更完美。


而静态只是在程序第一次执行的时候生产模板,即运行且只运行一次,这里又联系到一个静态块的概念了,不过很精典很实用。


   附代如下:


static {

Canlendar c= Canlendar.getInstance();

this Year = c.get(Canlendar.Year);

}




附加: 获取当前时间以字符串输出 返回的是毫秒数


import  java.util.*;

long t = System.currentTimeMillis();

String str = DateUtil.long2sring(t);

System.out.println(str)

System.currentTimeMillis()产生一个当前的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数,Date()其实就是相当于Date(System.currentTimeMillis());因为Date类还有构造Date(long date),用来计算long秒与1970年1月1日之间的毫秒差。
得到了这个毫秒数,我们自己也可以算起现在的年月日周时,但是这不是我们去计算的,因为有Calendar。Calendar最终出的结果就是年月日周时时区。
System.currentTimeMillis() 获得的是自1970-1-01 00:00:00.000 到当前时刻的时间距离,类型为long
String.valueOf(System.currentTimeMillis()) 这个语句可转为以下的型式:
long ct = System.currentTimeMillis();
String t = String.valueOf(ct);
其实上面的String t就相当于 ct+"";
只是转为字符串格式
public String refFormatNowDate() {
? Date nowTime = new Date(System.currentTimeMillis());
? SimpleDateFormat sdFormatter = new SimpleDateFormat("yyyy-MM-dd");
? String retStrFormatNowDate = sdFormatter.format(nowTime);
? return retStrFormatNowDate;
}