Java学习第十节之时间类
一、时间管理类
1、日历对象:抽象类不要new,而且会自动进位(需要用util包)
c.get(int);
c.add(int,int);
c.set();
c.getActualMaximum();
2、时间格式类(属于test包)
SimpleDateFormatmm=new SimpleDateFormat(“yyyy-mm-dd HH:MM:SS:SSS”);
3、Calendar类的用法
YEAR 是指这是哪年;
MONTH 是指这是月(从0开始);
DATE 是指今天几号
WEEK_OF_DAY 是指今年的第几星期;
WEEK_OF_MONTH 是指这个月的第几星期(从一开始);
DAY_OF_MONTH 是指这个月的第几天;
DAY_OF_WEEK 是指这周的周几(从日开始计算,从1计算);
DAY_OF_WEEK_IN_MONTH 是指第几周(从第一天开始算一周);
AM_PM 上午还是下午,0为上午,1为下午;
HOUR 12小时制几点;
HOUR_OF_DAY 24小时制几点;
MINITE 多少分;
SECONDS 多少秒;
ZONE_OFFSET 时区;
DST_OFFSET
Calendarc=Calendar.getInstance(); //获得日历对象
display(c); //显示当前的日期和各个分量,调整日期和时间
c.set(2014,04,10); //设置日期和时间
Calendar c=Calendar.getInstance(); //获得当前时间
System.out.println(c.get(Calendar.DATE));//打印当前日期
System.out.println(c.get(Calendar.MONTH)+1); //打印当前月份
System.out.println(c.get(Calendar.YEAR)); //打印当前年份
c.set(2014, 4, 10); //设置年月日
c.get(Calendar.HOUR); //设置时
c.get(Calendar.MINUTE); //设置分钟
c.get(Calendar.SECOND); //设置秒
c.add(Calendar.DAY_OF_MONTH,10); //当前日期加上10天
二、包 (包名+类名是类的全称)
(一)常用包简单说明
说明:以javax.开头的都是扩展包
1、java.sql 处理数据库的包
2、javax.sql 数据库操作的升级包(数据源)
3、java.util 集合和时间操作类
4、java.lang 系统
5、java.awt 图形化处理包(老版本,不够完善)
6、javax.swing 图形化处理包(较新的版本,相对比较完善)
7、java.test 专门处理文件的包
8、java.io 处理输入输出流的包
9、java.nio 新的操作流
10、javax.imageio 图片处理流
11、java.net 网络处理包
12、java.rmi 远程方法调用技术
13、javax.servlet B/S网页程序处理
14、java.xml xml处理包
15、java.lang.reflect 反射机制
(二)命名
1、包的命名规则
2、接口命名规则:接口名+IF 表示单一接口。
3、属性和方法的命名,第一个字母必须小写。
4、内部类(静态方法不能再内部类中定义)
三、综合程序举例:
1、日历
importjava.util.Calendar;
importjava.util.Date;
public classTest2 {
publicstatic void main(String[] args) {
intyyyy = 2014;
intMM = 12;
MM-= 1;
String[]w = { "日","一","二","三","四","五","六" };
Dated = new Date();
intyy = d.getYear() + 1900;
intmm = d.getMonth();
intdd = d.getDate();
for(String string : w) {
System.out.print(string+ "\t");
}
System.out.println();
Calendarc = Calendar.getInstance();
c.set(yyyy,MM, 1);
intxq = c.get(Calendar.DAY_OF_WEEK) - 1;
for(int i = 0; i < xq; i++) {
System.out.print(" \t");
}
for(int i = 0; i < c.getActualMaximum(Calendar.DATE); i++) {
c.set(yyyy,MM, (i + 1));
if(c.get(c.YEAR) == yy && c.get(c.MONTH) ==mm
&&c.get(c.DATE) == dd) {
System.out.print("["+ (i + 1) + "]\t");
}else {
System.out.print((i+ 1) + "\t");
}
xq= c.get(Calendar.DAY_OF_WEEK) - 1;
if(xq == 6) {
System.out.println();
}
}
}
}
2、
publicclass 帽子 {
String[]names={"大白","小花","小红","小黑","小灰","小兰","小奇"};
publicclass 兔子{
privateString name;
publicvoid 兔子(Stringname){
name=names[(int)(Math.random()*names.length)];
}
publicString toString(){
returnname;
}
}
兔子[] t;
privateString name;
public帽子(Stringstring) {
//TODO Auto-generated constructor stub
}
publicvoid 帽子(Stringname){
this.name=name;
t=new兔子[(int)Math.random()*6+1];
for(inti=0;i<t.length;i++){
t[i]=new兔子();
}
}
publicString toString(){
Stringstr=name+"跳出:\n";
for(兔子 r:t){
str+=r+"\t";
}
returnstr;
}
publicstatic void main(String[] args){
System.out.println(new帽子("帽子1"));
System.out.println(new帽子("帽子2"));
System.out.println(new帽子("帽子3"));
System.out.println(new帽子("帽子4"));
}
}