常用类:目的是为了让大家熟练地使用API帮助文档
Object:
概述:是java中所有类的父类,所有的类都继承自这个类。
由于Object类是属于java.lang包下的,所以我们使用的时候不需要导包
构造方法:
Object()
子类构造方法中,第一行默认有一个super()调用的就是这里的(指的是类没有继承其他的父类了)
方法:
hashCode(): 简单理解为是地址值的另外一种表现
toString(): 将来直接打印引用数据类型变量的时候,底层会默认调用该方法,如果一个类中没有重写该方法,默认调用的是父类
Object类中的toString()方法,获取的是地址值。this.getClass.getName()+"@"+Integer.toHexString(this.hashCode())
将来你打印一个引用数据类型的变量,如果结果不是以上结果,说明该类中重写toString()方法。
将来我们写类的时候,要重写该方法。
equals(): equals()只能用于引用数据类型之间的比较,将来如果一个对象调用该方法,要想比较两个对象的成员变量值是否相同的时候,该类要重写equals()
如果不重写,调用的是Object类中的equals()方法,默认比较的是地址值。
protected void finalize():
当垃圾收集确定不再有对该对象的引用时,垃圾收集器在对象上调用该对象。
一个子类覆盖了处理系统资源或执行其他清理的finalize方法。
你们就简单理解这个方法为用于垃圾回收的,什么时候回收,不确定
GC机制,标记法。
protected Object clone(): 不是所有的类都可以使用clone()方法,只有实现了Cloneable类的对象才可以使用该方法,并且该类中
重写clone方法,通过super()关键字调用。clone()是浅拷贝,拷贝的时候,对象中的引用数据类型变量的地址值不会变化,会创建一个新的对象赋值。
Scanner:
概述:用于键盘录入数据,在程序中使用
Scanner(InputStream source)
由于该类实在java.util包下,所以将来使用的时候,需要导包。
1、获取键盘上的int类型的数据
nextInt()
2、获取字符串数据
next(): 不会接收到特殊字符
nextLine(): 会接收到特殊字符,如换行符
String:
概述:简单理解为一个签将许多的字符串起来
字符串是由多个字符组成的一串数据(字符序列)
字符串可以看成是字符数组 ******
特点:
一旦被创建,值不能发生改变,这里的改变指的是,常量池中的字符换本身不可改变
构造方法:
public String()
public String(byte[] bytes)
public String(byte[] bytes,int offset,int length)
public String(char[] value)
public String(char[] value,int offset,int count)
public String(String original)
注意:
1、String s = new String("hello");与String s = "hello";的区别
new的时候会在堆内存中开辟空间。
2、字符串相加的时候需要注意的问题:
a、字符串如果是变量相加,是先在常量池中开辟空间,然后再做拼接。
b、字符串如果是常量相加,是先相加,然后再去常量池中去找,如果找到了,就返回,如果没有找到就开辟新的空间,存储拼接后的值。
String类的判断功能:
boolean equals(Object obj)
boolean equalsIgnoreCase(String str)
boolean contains(String str)
boolean startsWith(String str)
boolean endsWith(String str)
boolean isEmpty()
注意:String s = "";与String s = null; 引出字符串之间比较的注意事项,避免空指针异常
String类的获取功能:
int length()
char charAt(int index)
int indexOf(int ch)
int indexOf(String str)
int indexOf(int ch,int fromIndex)
int indexOf(String str,int fromIndex)
String substring(int start)
String substring(int start,int end)
String类的转换功能:
byte[] getBytes()
char[] toCharArray()
static String valueOf(char[] chs)
static String valueOf(int i)
String toLowerCase()
String toUpperCase()
String concat(String str)
public String[] split(String regex) **********
String类的其他功能:
替换功能
String replace(char old,char new)
String replace(String old,String new)
去除字符串两边若干个空格
String trim()
按字典顺序比较两个字符串内容是否一样,这里涉及到源码分析
int compareTo(String str)
int compareToIgnoreCase(String str)