您的位置:

java日期常用封装(java封装日期类)

本文目录一览:

Java小问题:写一个关于日期的类

public class Mydate

{private int y=0,m=0,d=0;

public Mydate()

{

}

public Mydate(int y,int m,int d)

{setYear(y);

setMonth(m);

setDay(d);

}

private void setYear(int y)

{if(y=1900y=2100)

{this.y=y;}

}

private void setMonth(int m)

{if(m0m=12)

{this.m=m;

}

}

private void setDay(int d)

{if(this.m==2)

{if(this.y%4==0 this.y%100!=0||this.y%400==0)

{this.d=29;

}

else

{this.d=28;}

}

else if((this.m=7this.m%2!=0)||(this.m7this.m%2==0))

{this.d=31;

}

else

{this.d=30;}

}

private int getYear()

{return this.y;

}

private int getMonth()

{return this.m;

}

private int getDay()

{return this.d;

}

public static void main(String[] args)

{ Mydate md=new Mydate(2000,2,2);

System.out.println("year:"+md.getYear()+" month:"+md.getMonth()+" days:"+md.getDay());

md=new Mydate(2010,4,10);

for(int i=1;i=12;i++)

{ md.setMonth(i);

md.setDay(10);

System.out.println("year:"+md.getYear()+" month:"+md.getMonth()+" days:"+md.getDay());

}

}

}

求一个java的封装时间的好一点的通用类代码

import java.util.*;

import java.text.*;

public class Timer {

/**

* 获得当前时间

* @return String

*/

public static String getDate()

{

Calendar date =Calendar.getInstance();

java.text.SimpleDateFormat sim = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String str = sim.format(date.getTime());

return str;

}

/**

* 字符串转换为时间

* @param date String

* @return Date

*/

public static Date getDate(String date) {

try {

SimpleDateFormat localTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date date1 = localTime.parse(date);

return date1;

}

catch (ParseException ex) {

ex.printStackTrace();

}

return null;

}

/**

* 取得秒数

*/

public static Long getDateDiff_Second(Date d1, Date d2) {

return (d2.getTime() - d1.getTime()) / 1000;

}

/**

* 取得分钟

* @param d1 Date

* @param d2 Date

* @return Long

*/

public static Long getDateDiff_Minute(Date d1, Date d2) {

return (d2.getTime() - d1.getTime()) / (1000 * 60);

}

/**

* 取得小时

* @param d1 Date

* @param d2 Date

* @return Long

*/

public static Long getDateDiff_Hour(Date d1, Date d2) {

return (d2.getTime() - d1.getTime()) / (1000 * 3600);

}

public static Long getDateDiff_Hour(String d1, String d2) {

return (getDate(d2).getTime() - getDate(d1).getTime()) / (1000 * 3600);

}

/**

*取得天数

* @param d1 Date

* @param d2 Date

* @return Long

*/

public static Long getDateDiff_Day(Date d1, Date d2) {

return (d2.getTime() - d1.getTime()) / (1000 * 3600*24);

}

public static Long getDateDiff_Day(String d1, String d2) {

return (getDate(d2).getTime() - getDate(d1).getTime()) / (1000 * 3600*24);

}

/**

*取得星期间隔

* @param d1 Date

* @param d2 Date

* @return Long

*/

public static Long getDateDiff_Week(Date d1, Date d2) {

return (d2.getTime() - d1.getTime()) / (1000 * 3600*24*7);

}

/**

* 取得当前时间的 间隔多少小时之后的时间

* @param hour int

* @return String

*/

public static String getDateAdd(int hour)

{

Calendar calendar=Calendar.getInstance();

java.text.SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

calendar.set(Calendar.HOUR,hour+calendar.get(Calendar.HOUR));

String enddate =sd.format(calendar.getTime());

return enddate;

}

/**

* 取得当前时间的 间隔多少小时之后的时间

* @param hour int

* @return String

*/

public static String getDateAdd(String starttime,int hour)

{

Calendar calendar=Calendar.getInstance();

java.text.SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

calendar.setTime(getDate(starttime));

calendar.set(Calendar.HOUR,hour+calendar.get(Calendar.HOUR));

String date =sd.format(calendar.getTime());

return date;

}

/**

* 获得时间格式的文件名称

* @return String

*/

public static String getFileName()

{

Calendar date =Calendar.getInstance();

java.text.SimpleDateFormat sim = new java.text.SimpleDateFormat("yyyyMMdd_hhmmss");

String str = sim.format(date.getTime());

return str;

}

//获得月日

public static String get_MM_DD(String s)

{

java.text.SimpleDateFormat sim = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date date;

String str="";

try {

date = sim.parse(s);

sim = new java.text.SimpleDateFormat("[MM-dd]");

str=sim.format(date.getTime());

} catch (ParseException e) {

e.printStackTrace();

}

finally

{

return str;

}

}

//获得年月日

public static String get_YYYY_MM_DD(String s)

{

java.text.SimpleDateFormat sim = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date date;

String str="";

try {

date = sim.parse(s);

sim = new java.text.SimpleDateFormat("[yyyy-MM-dd]");

str=sim.format(date.getTime());

} catch (ParseException e) {

e.printStackTrace();

}

finally

{

return str;

}

}

public static void main(String[] args)

{

}

}

Java的封装有哪些?

JAVA中常用的封装方式有以下几种:

1 、Boolean VS boolean

public final class Boolean extends Object  implementsSerializable,Comparable

Boolean 类将基本类型为boolean的值包装在一个对象中。一个Boolean类型的对象只包含一个类型为boolean的字段。此外,此类还为boolean和String的相互转换提供了许多方法,并提供了处理 boolean时非常有用的其他一些常量和方法。

2、 Byte VS byte

public final class Byte extends Number implements Comparable

Byte类将基本类型 byte的值包装在一个对象中。一个Byte类型的对象只包含一个类型为 byte的字段。此外,该类还为 byte和 String的相互转换提供了几种方法,并提供了处理 byte时非常有用的其他一些常量和方法。

3、 Character VS char

public final class Character extends Object  implements Serializable, Comparable Character类在对象中包装一个基本类型char的值。       Character类型的对象包含类型为char的单个字段。此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。

4 、Double VS double

public final class Double extends Number implements Comparable Double类在对象中包装了一个基本类型double的值。每个Double类型的对象都包含一个double类型的字段。此外,该类还提供了多个方法,可以将double转换为String,将String转换为double,还提供了其他一些处理double时有用的常量和方法。

什么是封装类java,date,integer,stringbuffer,system?

1、Java中有8种基本类型的封装类(注意首字母大写):Byte,Short,Integer,Long,Float,Double,Boolean,Character.

2、封装的概念:

将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来对隐藏的信息进行操作和访问。

3、好处:

(1)只能通过规定的方法访问数据

(2)隐藏类的实例细节,方便修改和实现。

Java语言中的封装有哪些?

JAVA中常用的封装方式有以下几种:

1 、Boolean VS boolean

public final class Boolean extends Object  implementsSerializable,Comparable

Boolean 类将基本类型为boolean的值包装在一个对象中。一个Boolean类型的对象只包含一个类型为boolean的字段。此外,此类还为boolean和String的相互转换提供了许多方法,并提供了处理 boolean时非常有用的其他一些常量和方法。

2、 Byte VS byte

public final class Byte extends Number implements Comparable

Byte类将基本类型 byte的值包装在一个对象中。一个Byte类型的对象只包含一个类型为 byte的字段。此外,该类还为 byte和 String的相互转换提供了几种方法,并提供了处理 byte时非常有用的其他一些常量和方法。

3、 Character VS char

public final class Character extends Object  implements Serializable, Comparable Character类在对象中包装一个基本类型char的值。       Character类型的对象包含类型为char的单个字段。此外,该类提供了几种方法,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写,反之亦然。

4 、Double VS double

public final class Double extends Number implements Comparable Double类在对象中包装了一个基本类型double的值。每个Double类型的对象都包含一个double类型的字段。此外,该类还提供了多个方法,可以将double转换为String,将String转换为double,还提供了其他一些处理double时有用的常量和方法。

5、 Float VS float

public final class Float extends Number implements Comparable  

Float类在对象中包装了一个float基本类型的值。Float类型的对象包含一个float类型的字段。此外,此类提供了几种方法,可在float类型和String类型之间互相转换,并且还提供了处理float类型时非常有用的其他一些常量和方法。