有缘之人可以逆转时光回到过去|

小钰大猪崽

园龄:2年10个月粉丝:0关注:1

Java—常用类

1.内部类🍈

内部类

概念:在类的内部定义一个完整的类

特点

编译后可独立生成字节码文件

内部类可直接访问外部类的私有成员,而不破坏封装

可为外部类提供必要的内部功能组件

成员内部类

在类的内部定义,与实例变量,实例方法同级别的类

外部类的一个实例部分,创建内部类对象时,必须依赖外部对象类

当外部类,内部类存在重名时,会优先访问内部类属性

成员内部类不能定义静态成员的,但是可以包含静态常量

静态内部类

不依赖外部类对象,可直接创建或通过类名访问,可声明静态成员

只有内部类才能使用static修饰类,只能直接访问外部类的静态成员

局部内部类

定义在外部类方法中,作用范围和创建对象范围仅限于当前方法

匿名内部类

没有名字的局部内部类

必须继承一个父类或者实现一个接口


2.Object类🍉

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

任何类,如没有书写extends显示继承某个类,都市默认直接继承Object类

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

Object类型可以存储任何对象

getClass()

public final Class<?> getClass(){}

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

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

hashCode()

public int hashCode(){}

返回该对象的哈希码值

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

一般情况下相同的类型返回的哈希码相同

toString()

public String toString(){}

返回该对象的字符串16进制表示

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

equals()

public boolean equals(Object obj){}

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

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

equals()方法覆盖步骤:

比较两个引用是否指向同一个对象

判断obj是否为null

判断两个引用指向的实际对象类型是否一致

强制类型转换

一次比较各个属性值是否相同

finalize()

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

手动回收机制:使用System.gc(),通知JVM立即执行垃圾回收

Java9之后被弃用


3.包装类🍊

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

Object可统一所有数据

int的包装类型是Integer

装箱/拆箱

8种基本类型的包装类

栈—>堆:装箱,即基本类型转引用类型

堆—>栈:拆箱,即引用类型转基本类型

1.5之后已弃用,采用自动装箱和拆箱

4.String类🍋

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

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

length()

返回字符串长度

charAt(int index)方法

返回某个位置的字符

contains(String str)方法

判断是否包含某个字串

toCharArray()

将字符转成数组

indexOf()

查找str首次出现的下标,存在,则返回该下标,不存在,则返回-1

lastIndexOf()

查找字符串在当前字符串中最后一次出现的下标索引

trim()

去掉字符串前后的空格

toUpperCase()/toLowerCase()

将小写转成大写

endWith(String str)

判断字符串是否以指定结尾

replace(char oldchar,char newchar)

将旧字符替换成新字符

split(String str)

根据str做拆分

equals()

字符串比较

compareTo()

unicode码位置距离比较

StringBuffer和StringBuiler的使用

这两个类相对于String效率更高,更节省内存

这两个类的区别:

StringBuffer,1.0提供,运行效率慢,线程安全

StringBuiler,5.0提供,运行效率快,线程不安全

这两个类的常用方法:

append(str)追加的方法,追加字符串

intsert(0,str)指定插入的方法,在下标处插入字符

replace(0,4,str)替换的方法,指定位置替换

delete(0,4)删除的方法,指定位置的删除


5.Date类🍌

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


6.System类🍍

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

常用的方法:

arraycopy()

复制数组

currentTimeMillis()

获取当前系统时间,返回的是毫秒数

gc()

建议jvm赶快启动垃圾回收器回收垃圾

exit(int status)

退出jvm,如果参数表示0表示正常退出jvm,非0表示异常退出

posted @   小钰大猪崽  阅读(6)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 FSF REOL
FSF - REOL
00:00 / 00:00
An audio error has occurred.