札记新的09

笔记新的09
                               Calendar 
第三方包的使用

  1 在项目文件夹下创建文件夹 lib

  2 复制 *.jar文件到 lib

  3 配置jar文件到项目的CLASSPATH中

   选择项目->File->Properties

    -> Java Build Path-> Libraries

    -> add JARs

--->在本地新建一个jar文件夹装入所需要的jar文件-
->在工程的build path中添加add libraries中添加jar包

   时间日期

  1 java 中基本的时间表示 long

  2 Java提供了Date类型表示时间和日期

    Date 是long类型的包装

  3 Calendar 是历法的的抽象.

    历法: 公历, 农历, 太阳历, ...

    GregorianCalendar 是历法的实现, 采用公历

    (太阳历) 算法实现的.

    Calender cal = Calender.getInstance();

  4      new Date(long)

         date.setTime(long)  cal.setTime(Date);

         ---------->      --------->

   long <---------- Date <---------  Calendar

        date.getTime()     cal.getTime()    

  long time = 0;//1970 1 1

    Date date = new Date(); //当前时间

    date.setTime(time);// 1970 1 1

    Calendar cal =

      new GregorianCalendar();//当前时间

    cal.setTime(new Date(time));// 1970 1 1

    Date d = cal.getTime();

    long l = cal.getTime().getTime();//0
int dayOfWeek =cal.get(Calendar.DAY_OF_WEEK);
取得这是这一周的第几天。
if(dayOfWeek==Calendar.SUNDAY)去比较
      

  5 Date 和 Calendar 的默认值就是当前时间

  6 日期的计算

    如: 计算商品的促销日期:

    输入: 商品生产日期, 和保质期月份

    返回: 商品的促销日期, 是过期前两周周的周五

   

  7 日期的输入与输出

    java.text.SimpleDateFormat fmt =

      new SimpleDateFormat("yyyy-MM-dd");
  
    构建SimpleDateFormat 一般提供日期的格式

     "yyyy-MM-dd" 具体参看 javadoc

    如: "yyyy-MM-dd HH:mm:ss"

       "yyyyMMdd"

       "dd/MM/yyyy"

       "MM/dd/yyyy"

      fmt.parse(String)可以实现将(合法)字符串解

     析为日期类型, 经常用于处理日期输入.

      fmt.format(Date) 可以把日期格式化为字符串

     用于输出处理.

内部类- 定义在类的内部 的类, 根据位置分为4类

  1 静态内部类:使用static修饰,声明在类体中,可以使用

   外部类类名访问,在类内部可以省略类名。静态内部类中

   可以访问外部类的静态成员。

  2 成员内部类: 声明在类体中,不使用static,具有类的成员特征

   也就是,必须有类的实例才能创建内部类实例。内部类实例

   可以访问共享外部类的成员变量。很常用。

   如:链表的节点就可以定义为内部类

  3 局部内部类:把类声明在方法中,就是局部内部类,作用域

   类似局部变量。很少见。

  4 匿名内部类,匿名类:非常常见,可以写在任何地方,就行一般的语句。

    语法更象是创建对象:

    Date d = new Date(){};

    匿名类是对原类的一个继承,同时创建了实例,{} 就是继承

    以后的类体。类体中可使用所有类的语法。

    匿名类不能写构造器。

    匿名类可以从抽象类或者接口继承,

    必须提供抽象方法的实现。

  5 任何内部类都编译成独立的class文件

  6 最大的作用:封装!内部类很少在外部使用.

  7 通过实例简单理解记忆语法.