Java常用类

Object类

1.Object是所有java类的父类

2.如果在类的声明的时候没有显示的通过extends去继承谁,默认会继承Object

3.Object类的作用就是提供一些公用的属性和方法

4.Object只是提供一个无参的构造方法

常用的方法 

(1)equals(Object obj) :比较两个对象的地址值是否相等
(2)getClass() :返回此 Object的运行时类。
(3)hashCode() :返回该对象的哈希值
(4)toString() :打印的是对象在堆里地址值

当我们创建完一个对象以后,我们要输出这个对象的引用,实际上就是调用了当前对象的toString 方法,打印就是地址值 
object类中是这么定义的:

public String toString() {
  return getClass().getName() + "@" + Integer.toHexString(hashCode());
} 

像String /Date 、File、包装类都重写了toString 方法,重写后的返回是当前对象的“实体内容”
如果自己定义的类需要返回"实体内容"的话,我也需要重写toString 方法。

String str=new String("str"),这种方式在内存中创建了几个对象?

两个,一个堆里面的,一个字符串常量池里面的 

==和equals区别 面试重点 

==:比较运算符

(1)可以使用在基本数据类型和引用数据类型
(2)如果比较基本数据类型的话,比较的是两个变量的值是否相等。
(3)如果比较引用数据类型的话,比较的是两个对象的地址值是否相等。

equals()的使用

(1)equals是一个方法
(2)它只能对象引用数据类型进行比较
(3)object类里面是这么定义的

public boolean equals(Object obj) {
  return (this == obj);
}

发现它还是通过==进行对象的两个对象,object定义的equals方法和==的作用一样,实际比较的是两个对象的地址值是否相等

(4)像String 、Date 、File、包装类等等都重写了equals方法,重写以后的,比较的不是地址了,而是比较两个对象的“实体内容”是否相等。

(5)通常情况下,我们自己定义的类是没有重写equals方法的,如果你比较两个对象的“实体内容”,是否相等,我们需要重写equals方法,一般情况下都会进行重写。
重写原则:比较两个对象的实体内容是否相等 

String、StringBuffer、StringBuilder三者的区别?

String:不可变序字符序列,如果要修改字符串的值,不是在原有字符串值的基础上去改,而是重新分配一块内存区域
StringBuffer:可变字符序列,在原有字符串的基础上进行更改,线程安全的,效率低
StringBuilder:可变字符序列,在原有字符串的基础上进行更改,线程不安全的,效率高
String、StringBuffer、StringBuilder三者的效率:StringBuilder>StringBuffer>String

包装类

1.java提供了8种基本数据类型,每个基本数据类型对应一个包装类,使基本数据类型的变量就可以有类的特征
2.作用:就是做基本数据类型、包装类、String进行类型转换
3.装箱和拆箱(自动) 面试
 装箱:基本数据类型转成对应的包装类
拆箱:包装类转成对应的基本数据类型

 LocalDateTime常用方法

getDayOfMonth()/getDayOfYear()

获得月份天数(1-31) /获得年份天数(1-366)

getDayOfWeek()

获得星期几(返回一个 DayOfWeek 枚举值)

getMonth()

获得月份, 返回一个 Month 枚举值

getMonthValue() / getYear()

获得月份(1-12) /获得年份

getHour()/getMinute()/getSecond()

获得当前对象对应的小时、分钟、秒

withDayOfMonth()/withDayOfYear()/

withMonth()/withYear()

将月份天数、年份天数、月份、年份修改为指定的值并返回新的对象

plusDays(), plusWeeks(),

plusMonths(), plusYears(),plusHours()

向当前对象添加几天、几周、几个月、几年、几小时

minusMonths() / minusWeeks()/

minusDays()/minusYears()/minusHours()

从当前对象减去几月、几周、几天、几年、几小时

posted @ 2021-02-07 14:42  山石满棠  阅读(112)  评论(1编辑  收藏  举报