常用工具类(随堂笔记)

抽象类

abstract:abstract修饰符可以用来修饰方法也可以用来修饰类,如果用来修饰方法,那么该方法就是抽象方法。如果用来修饰类,那么该类就是抽象类;
  1. 抽象类中可以没有抽象方法,但是有抽象方法的类一定要声明为抽象类;

  2. 抽象类不能使用new关键字来创建对象,他是用来让子类继承的;

  3. 抽象方法只有方法的声明,没有方法的实现,他是用来让子类实现的;

  4. 子类继承抽象类,那么就必须要实现抽象类,没有实现的抽象方法,否则该子类也要声明为抽象类;

内部类

内部类:就是在一个类的内部定义一个类,比如,A中定义一个B类,那么B类相对A类来说就称为内部类,而A类相对B类来说就是外部类;
  1. 成员内部类;
  2. 静态内部类;
  3. 局部内部类;
  4. 匿名内部类;
//练习:字符串”2020-09-08“转换为java.sql.Date
public coid testExcer() throws ParseException{
    String birth = "2020-09-08";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date date = sdf.parase(birth);
    System.out.println(date);//输出:Tue Sep 08 00:00:00 GMT+08:00 2020
    
    java.sql.Date birthDate = new java,sql.Date(date.getTime);
    System.out.println(birthDate);//输出:2020-09-08
}
//now():获取当前的日期LocalDate、时间LocalTime、时间+日期LOcalDateTime
public void test(){
    LocalDate localDate = new LocalDate.now();
    LocalTime localTime = new LocalTime.now();
    LocalDateTime localDateTime = new LocalDateTime.now();
    
    System.out.println(localDate);
    System.out.printlc(localTime); 
    System.out.println(localDateTime);

//of():设置指定的年、月、日、时、分、秒。没有偏移量
    LocalDateTime localDateTime = LocalDateTime.of(2020,10,8,17,43,20);
    System.out.println(localDateTime);
//getXxx():获取当月的信息;
    System.out.println(locDateTime.getDayOfMonth());//获取今天是这个月的第几天
    System.out.println(locDateTime.getDayOfWeek());//获取周几
    System.out.println(locDateTime.getMonth());//获取英文月份
    System.out.println(locDateTime.getMonthValue());//获取数字月份
    System.out.println(locDateTime.getMinute());//获取分钟
}

Comparable接口的使用举例:自然排序

  1. 像String、包装类等实现了Comparable接口,重写了compareTo(obj)方法,给出了比较两个对象大小的方式;
  2. 像String、包装类重写compareTo()方法以后,进行了从小到大的排列;
  3. 重写compareTo(obj)的规则:
  • 如果当前对象this大于形参对象obj,则返回正整数;

  • 如果当前对象this小于形参对象obj,则返回负整数;

  • 如果当前对象this等于形参对象obj,则返回零;

Comparator接口的使用:定制排序

  1. 背景:当元素的类型没有实现java.Comparable接口而又不方便修改代码,或者实现了java.lang.Comparable接口的排序规则不适合当前的操作,那么可以考虑使用Comparator的对象来排序;
  2. 重写compare(Object o1,Object o2)方法,比较o1和o2的大小;

如果方法返回正整数,则表示o1大于o2;

如果返回0,表示相等;

如果返回负数,表示o1小于o2;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值