Object String类

Object String类
1. Java.lang.Object
2. API application programming interface
3. 一共11(其实是9个,三个重载),
4. toString,
String 重写了toString
Object 默认输出所属类名@hashcode(16进制内存地址)
clone,
equals, hashSet
getClass,
notify,notifyAll, wait(),wait(lont timeout),wait(long timeout,int nanos)

5. 进制
16进制转10进制 123=1*16二次方+2*16一次方+3*16零次方


6. String
String str1=”bbb”,String str2=”bbb”(字面值的方式赋值) str1==str2 ---true
String a=”bbb” String b=new String(“bbb”)(new方式赋值) a==bfalse string pool(str1=”bbb”,str2=”bbb”先检查有无这个对象,如果没有创建新的对象,如果没有,指向str2)
7. String s=”hello” String s1=”hel” String s2=”lo” s==s1+s2->false (String 类是fianl,所以是不能被改变的,s1+s2会生成s3)


8. 重写equals方法
public boolean equals(Object o){
if(this==o){
return true;
}
if(o instanceof TestClass){
TestClass tc=( TestClass)o;
if(tc.equals(this)){
return true;
}
}
return false;
}


9. String 类是fianl,所以是不能被改变的,s1+s2会生成s3
10. string pool(字面赋值)如果string pool中存在,直接返回string pool中的内存地址。
如果不存在,存在不创建任何对象,直接将string pool地址传回
11. (new方式赋值)检查string pool中查找有没有内容为”aaa”这个对象,如果有直接在堆中创建string pool对象,将堆地址传给引用,如果没有内存中创建对象,并在堆中创建对象

12. Intern()方法
“hello”.intern() 如果string pool
如果具有内容相同的对象,对象就会被返回回来
如果没有创建一个对象,并返回对象地址


13.String :"aa"+"bb"会生成3个对象影响效率
解决办法:StringBuffer buffer=new StringBuffer();
buffer.append("aa").append("bb");
String a=buffer.toString;//效率高
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值