常用类库

System类:

  • 不能创建System类的对象,所有方法都是静态方法,通过System调用
  • 常用的就是out,currentTimeMillis()

Object类

  • Object类是所有普通类、数组、枚举类的父类,默认继承
  • 常用方法:
    • boolean equals(Object obj),判断是否为堆内存中的同一个对象
    • Class getClass(),获取对象的运行时类型
    • int hashCode(),根据内存地址返回hashcode,很多类都重写了该方法
    • clone方法,复制一个与本对象完全隔离的对象
      --注意只克隆本对象,引用类型的成员变量依然指向同一个对象
      --clone方法被protected修饰,子类重写后才能调用
      --重写步骤:实现Cloneable接口后再重写clone方法,方法体中调用supper.clone()方法

Objects工具类

  • 不同于类的静态方法,工具类一般将对象作为参数,并且可以接收null
  • 常用:toString、hashCode、equals、isNull等

关于随机数

  • Math.random()、Random类、ThreadLocalRandom类
    • Math.random()只能返回0-1的随机double数
    • Random类方法更丰富,可以返回各种类型,也可以定义边界
      -- 非静态方法,需要new一个实例来调用方法
    • ThreadLocalRandom类线程安全,功能与Random类相似

时间相关

  • 获取当前毫秒数:System.currentTimeMillis()
  • 获取日期:当前日期Localdate.now(),返回2018-12-4
  • 获取指定日期:LocalDate.of(2018, Month.APRIL, 5),返回2018-04-05
  • 获取当前时间:LocalTime.now()、LocalDateTime.now()
  • 获取年份:Year.now()、Year.of(年份)
  • Year.now().atMonth(int i)——返回年月YearMonth
  • Year.now().atMonth(int i).atDay(iny j),返回年月日LocalDate
  • 获取月份:YearMonth.now()
  • 获取月日:MonthDay.now()

你可能感兴趣的:(常用类库)