前端-常用类

常用类

Object类

超类、基类,所有类的直接或间接父类,位于继承树的最顶层。

 

任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承。

 

0bject类中所定义的方法,是所有对象都具备的方法。

 

0bject类型可以存储任何对象。

  • 作为参数,可接受任何对象。

  • 作为返回值,可返回任何对象。

Object类常用方法

getClass()方法

public final Class<?> getClass(){}

返回引用中存储的实际对象类型

应用:通常用于判断两个引用中实际存储对象类型是否一致

hashCode()方法

public int hashCode(){}

返回该对象的哈希码值

哈希值根据对象的地址或字符串或数字使用hash算法计算出来的int类型的数值。

一般情况下相同对象返回相同哈希码。

toString()方法

public String toString(){}

返回该对象的字符串表示(表现形式)

可以根据程序需求覆盖方法,如:展示对象各个属性值

equals()方法

public boolean equals(Object obj){}

默认实现为(this == obj),比较两个对象地址是否相同

可进行覆盖,比较两个对象的内容是否相同

equals()方法覆盖步骤

比较两个引用是否指向同一个对象 if(this==obj)

判断obj是否为null if(obj==null)

判断两个引用指向的实际对象类型是否一致 if(obj.instanceof Student)

强制类型转换 Student s = (Student)obj;

依次比较各个属性值是否相同 if(this.name.equals(s.getName())&&this.age==s.getAge())

finalize()方法

当对象被判定为垃圾对象是,由JVM自动调用此方法,用以标记垃圾对象,进入回收队列

垃圾对象:没有有效引用指向此对象时,为垃圾对象

垃圾回收:由GC销毁垃圾对象,释放数据存储空间

自动回收机制:JVM的内存耗尽,一次性回收所有垃圾对象

手动回收机制:使用System.gc();通知JVM指向垃圾回收

包装类

什么是包装类

基本数据类型所对应的引用数据类型

Object可统一所有数据,包装类的默认值是null

前端-常用类

类型转换与装箱,拆箱

8种包装类型提供不同类型间的转换方式:

  • Number父类中提供的6个共性方法

    • 自动装箱 Integer integer = age;

    • 自动拆箱 int age = integer

  • parseXXX()静态方法

    • 基本类型转成字符串 int n1 = 100

      • 1.使用+号 String s1 = n1+"";

      • 2.使用Integer中的toString()方法 String s2 = Integer.toString(n1); String s2 = Integer.toString(n1,16);

    • 字符串转成基本类型 String str = "150";

      • 使用Integer.parseXXX(); int n2 =Integer.parseInt(str);

    • boolean字符串形式转成基本类型:“true”---->true 非"true"---->false

  • valueOf()方法

注意:需保证类型兼容,否则抛出NumberFormatException异常

整数缓冲区

Java预先创建了256个常用的整数包装类型对象

在实际应用当中,对已创建的对象进行复用

String类

String

字符串是常量,创建之后不可改变

字符串字面值存储在字符串池中,可以共享。

String s = "hello"; 产生一个对象,字符串池中存储

String s = new String("hello"); 产生两个对象,堆,池各存储一个

常用方法

public int length():返回字符串的长度

public char charAt(int index):根据下标获取字符

public boolean contains(String str):判断当前字符串中是否包含str

public char[] toCharArray():将字符串转换成数组

public int indexOf(String str):查找str首次出现的下标,存在,则返回该下标;不存在,则返回-1

public int lastIndexOf(String str):查找字符串在当前字符串中最后一次出现的下标索引

public String trim():去掉字符串前后的空格

public String toUpperCase():将小写转成大写

public boolean endWith(String str):判断字符串是否以str结尾

public String replace(char oldChar,char newChar):将旧字符串缓存新字符串

public String[] split(String str):根据str做拆分

可变字符串

StringBuffer:可变长字符串,JDK1.0提供,运行效率慢,线程安全。

StringBuilder:可变长字符串,JDK5.0提供,运行效率快,线程不安全。

BigDecimal类

位置:java.math包中

作用:精确计算浮点数

创建方式:BigDecimal bd=new BigDecimal("1.0");

方法:

  • BigDecimal add(BigDecimal bd) 加

  • BigDecimal subtract(BigDecimal bd) 减

  • BigDecimal multiply(BigDecimal bd) 乘

  • BigDecimal divide(BigDecimal bd) 除

除法:divide(BigDecimal bd,int scal,RoundingMode mode)

参数scal:指定精确到小数点后几位。

参数mode:

  • 指定小数部分的取舍模式,通常采用四舍五入模式

  • 取值为BigDecimal.ROUND_HALF_UP。

Date

Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法所取代。

时间单位

  • 1秒=1000毫秒

  • 1毫秒=1000微妙

  • 1微妙=1000纳秒

Calendar

Calendar提供了获取或设置各种日历字段的方法

构造方法

  • protected Calendar():由于修饰符是protected,所有无法直接创建该对象

其他方法

前端-常用类

SimpleDateFormat

SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类。

进行格式化(日期->文本),解析(文本->日期)。

常用的时间模式字母

前端-常用类

System类

System系统类,主要用于获取系统的属性数据和其他操作,构造方法私有的。

前端-常用类

 

 

 

上一篇:使用laravel-amdin调用文件上传阿里oss注意点


下一篇:rest-auured断言报错Float与BigDecimal