在类的内部定义,与实例变量、实例方法同级别的类。
外部类的一个实例部分,创建内部类对象时,必须依赖外部类对象。
* Outer out = new Outer();
* Inner in = out.Inner();
当外部类、内部类存在重名属性时,会优先访问内部类属性
* 要调用外部类属性需:Outer.this.name
成员内部类不能定义静态成员,但可以包含静态常量。
常用方法 | 特点 | 应用 |
---|---|---|
getClass方法 | public final Class<?> getClass(){} 返回引用中存储的实际对象类型 | 通常用于判断两个引用中实际存储对象类型是否一致 |
hashCode方法 | public int hashCode(){} 返回该对象的哈希码值:哈希值根据对象的地址或字符串或数字使用hash算法计算出来的int类型的数值 | 一般情况下相同对象返回相同的哈希码 |
toString方法 | public String toString(){} 返回该对象的字符串表示:可以根据此程序需求覆盖该方法 | 通常将其重写获取参数 |
equals方法 | public boolean equals(Object obj){} 默认实现为(this == obj),比较两个对象地址是否相同 | 可以进行覆盖【步骤:比较两个引用是否指向同一个对象-->判断obj是否为null-->判断两个引用指向的实际对象类型是否一致-->强制类型转换-->依次比较各个属性值是否相同】,比较两个对象的内容是否相同 |
finalize方法 | 1.当对象被判定为垃圾对象时,由JVM自动调用此方法,用于标记垃圾对象进入回收队列;2.垃圾对象:没有有效引入指向此对象时为垃圾对象;3.垃圾回收:由GC销毁垃圾对象释放数据存储空间;4.自动回收机制:JVM内存耗尽一次性回收所有垃圾对象;5.手动回收机制:使用System.gc();通知JVM执行垃圾回收 |
即基本数据类型所对应的引用数据类型
类型转换与装箱【基本类型转换成引用类型】、拆箱【引用类型转换成基本类型】
基本类型和字符串之间的转换
Integer整数缓冲区:-128~127,超出范围自动创建新空间
方法名 | 作用 | 使用方法 |
---|---|---|
length() | 返回字符串的长度 | |
charAt(int index) | 返回某个位置的字符 | |
contains(String str) | 判断是否包含某个字符串 | |
toCharArray() | 将字符串转换成数组 | |
indexOf(String str) | 查找str首次出现的下标,存在则返回下标;不存在则返回-1 | |
lastIndexOf(String str) | 查找字符串在当前字符串中最后一次出现的下标索引 | |
trim() | 去掉字符串前后的空格 | |
toUpperCase() | 将小写转为大写 | |
endWith(String str) | 判断字符串是否以str结尾 | |
replace(char oldChar,char newChar) | 将旧字符串换成新字符串 | |
split(String str) | 根据str做拆分 |
类名 | 功能 | |
---|---|---|
StringBuffer | 可变长字符串,jdk1.0提供,运行效率慢、线程安全 | |
String Builder | 可变长字符串 ,jdk5.0提供,运行效率快、线程不安全 |
大的浮点数的精确计算
使用方法:
原文:https://www.cnblogs.com/lldblog-1/p/14153215.html