API
object类:
类 Object 是类层次结构的根类。每个类都使用 Object 作为超类。
所有对象(包括数组)都实现这个类的方法(包含Jdk提供的以及开发者自定义的类...)
Object类的方法:
public int hashCode():返回该对象的哈希码值。
注意:哈希值是根据哈希算法计算出来的一个值,这个值和地址值有关,但是不是实际地址值。
你可以理解为地址值。
public final Class getClass():返回此 Object 的运行时类
Class类的方法:
public String getName():以 String 的形式返回此 Class 对象所表示的实体
public String toString()返回该对象的字符串表示
返回一个“以文本方式表示”此对象的字符串.建议所有子类都重写此方法
不需要自己重写,快捷生成toString
Integer:
public static String toHexString(int i)
以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式
toString()注意事项:
如果直接输出对象名称(默认执行toString()),它默认输出的是当前对象的地址值(一般没有意义),如果重写了Object中toString(),它输出的是当前
该对象的成员变量信息
public boolean equals(Object obj):指示其他某个对象是否与此对象“相等”。
==:比较的是两个对象的地址值是否相同
Object中的equals方法,底层默认的比较的地址值是否相同,但是 如果两个对象的成员变量值一摸一样,理解为是同一个人
建议重写Object的equals方法,比较的是两个对象的内容是否相同!
工具自动重写
注意事项:(重点)
对于equals方法,如果没有重写,默认执行的"==",比较的是两个对象的地址值是否相同,如果重写了equals方法,
比较是两个对象的内容是否相同!
Object的浅克隆
protected Object clone()
throws CloneNotSupportedException创建并返回此对象的一个副本。
方法调用的时候,会抛出一个异常,一旦该方法出现异常,将异常交给了jvm处理,jvm将
异常给开发者打印到控制台!
当前类必须实现接口 Cloneable,才能使用clone方法,针对该类实例进行按字段复制
Scanner:
键盘录入
1)main方法就是一种早期键盘录入,但是只能String数据
2)Scanner类:文本扫描器
nextXXX():接收指定的XXX数据类型
举例:
1)创建扫描器对象
public Scanner(InputStream source) :构造方法
//形式参数如果是一个抽象类,需要该抽象类的子类对象
System这个类中有一个in成员变量
InputStream in = System.in ;
固定格式:
Scanner sc = new Scanner(System.in);
int 变量 = sc.nextInt();
在Scanner类中提供一个判断功能:
public boolean hasNextXXX() :判断是否录入的是该XXX类型的数据
public XXX nextXXX() ;接收指定的类型
String:
String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。
字符串是常量;它们的值在创建之后不能更改
常用的构造方法:
1)空参构造
public String()
2)public String(byte[] bytes) :将一个字节数组构成成一个字符串对象
3)public String(byte[] bytes, int offset,int length):将字节数组的一部分内容转换成字符串
参数:offset:指定索引
参数length:指定长度
4)public String(char[] value) :将字符串数组构成字符串内容
5)public String(char[] value,int offset,int length):将字符数组的一部分构成成字符串
6)public String(String original):将一个字符串常量构造成一个字符串对象