1)被public修饰的属性和方法可以被所有的类访问
2)可以被继承
protected(受保护的):
1)可以在类中访问
2)相同包下面
3)该类的子类继承(可以不同包)
private(私有的):
1)被private修饰的属性和方法只能在该类内部使用
2)不能被继承
默认的(不被修饰符修饰):
1)类中可以访问
2)相同包下面的类,也可以访问
一个关键字(instanceof),判断一个对象是否是一个类的实例(子类的对象也是父类的实例)
object instanceof classname(interfacename)
java.long.Object
.toString()
每个类都从Object中继承了toString()方法,每次打印一个类的引用时,都会调用该引用所指向对象的toString()方法,并打印出产生的结果,一般都重写了Object的toString()方法,Object的方法原生输出的是“getClass().getName()+@+地址的16进制哈希编码”
String类
.equals() 定义在Object当中,它是判断调用equals方法的引用与传进来的引用是否时一致,即是否指向的时同一个对象,对于Object来说equals等同于==
String重写了equals()方法
它是判断当前字符串与传进来的字符串内容是否一致,对于String对象的相等性判断来说,使用equals()方法判断,而不要使用==
字符串是一个常量,生成之后不能被修改,无法改变。使用+拼接字符串时,生成了一个新的对象
String Pool(字符串池)(栈中),
采用字面值方式赋值:String str1 = "aaa";String str2 = "aaa";java会现在字符串池中查找是否存在"aaa"对象,不存在就创建一个,然后把地址传给str1,如果存在,让str1指向已经存在的该“aaa”的对象
使用new创建:先会再字符串池中查看时否存在该字符串对象,如果有,就不在shting pool中创建“aaa”字符串对象了,直接再堆中创建一个“aaa”对象,然后吧地址返回回来。如果没有,则现在string pool中创建一个“aaa”对象,然后再在堆中创建一个字符串对象,然后再吧地址返回回来。
intern()