Object类:最高父类,默认父类
Object类的多态:所有对象都是Object类,可接收任意数据类型。
toString方法:
默认输出地址。建议重写
Object
中的
toString
方法。 此方法的作用:返回对象的字符串表示形式。
Object
的
toString
方法, 返回对象的内存地址
equals方法:
默认比较地址。
此方法的作用:指示某个其他对象是否
“
等于
”
此对象。
内部类:在一个类内部定义另一个类
成员内部类、局部内部类、匿名内部类、静态内部类
在外部创建成员内部类:
Outer o = new Outer();
Outer.Inner i = o.new Inner();
//外部类名.内部类名 内部对象名 = 外部对象名.new 内部类名();
内部访问外部属性和方法(重名时):Outer.this.x;
局部内部类:
在方法内部创建的内部类
注意:局部内部类就像是方法里面的一个局部变量一样,是不能有public、protected、private以及static修饰符的。
匿名内部类:
new
父类构造器(参数列表)
|
实现接口()
{
//
匿名内部类的类体部分
}
1、使用匿名内部类时,我们必须是继承一个类或者实现一个接口,但是两者不可兼得,同时也只能继承一个类或 者实现一个接口。
2
、匿名内部类中是不能定义构造函数的。
3
、匿名内部类中不能存在任何的静态成员变量和静态方法。
4
、匿名内部类为局部内部类,所以局部内部类的所有限制同样对匿名内部类生效。
5
、匿名内部类不能是抽象的,它必须要实现继承的类或者实现的接口的所有抽象方法。
6、只能访问final型的局部变量
静态内部类:它不能使用外部类的非static成员 变量或者方法
包装类:8种基本数据类型包装起来
基本数据类型不是引用类型的对象,存储在栈,包装起来作为对象存储在堆
包装类装箱和拆箱:
装箱:
Integer x = new Integer(100); //手动装箱过时了
Integer x = 100; //自动装箱
拆箱:
int j = x; //自动拆箱( Integer x = 100;)
字符串转换:
public static
int
parseInt
(
String
s
)
:将
String
变为
int
型数据
public static float
parseFloat
(
String
s
)
:将
String
变为
Float
public static
boolean
parseBoolean
(
String
s
)
:将
String
变为
boolean
。。。。。。
int i = Integer.parseInt("10");
方法的可变参数:public int sum(String s,int ...nums){ }
一个方法中定义完了参数,则在调用的时候必须传入与其一一对应的参数,但是在
JDK 1.5之后提供了新的功能,可以根 据需要自动传入任意个数的参数。
语法:
返回值类型 方法名称
(
数据类型
…
参数名称
){
//参数在方法内部 , 以数组的形式来接收
}
注意:
可变参数只能出现在参数列表的最后。