java基础Object/内部类


4:Object类的使用
(1)Object:是所有类的根类,超类,基类。
(2)Object类中的方法:
A:toString()
返回对象的字符串表示,输出语句输出对象名的时候,默认调用的就是该方法。
B:equals()
默认比较的是对象的地址值,如果想按照自己的方式比较,就需要重写equals方法。
C:finalize() 垃圾回收器调用
D:getClass() 反射的时候继续讲
E:hashCode() 根据哈希算法计算出来的一个值
(3)案例:
class Student
{
private String name;
private int age;
public Student()
{
}
//getXxx(),setXxx()
public String toString()
{
return "name:"+name+",age:"+age;
}
public boolean equals(Object obj)
{
if(this == obj)
{
return true;
}
if(!(obj instanceof Student))
{
return false;
}
Student s = (Student)obj;
return this.name.equals(s.name) && this.age == s.age;
}
}

1:内部类(理解)
(1)把类定义在一个类的内部,就是内部类的用法。
(2)特点:
A:内部类可以直接使用外部类的成员。
B:外部类想使用内部类,就必须创建对象使用。
(3)按照位置划分:
A:成员位置
a:如果没有被private或者static修饰。
外部类.内部类 名字 = 外部类对象.内部类对象;
举例:
Outer.Inner oi = new Outer().new Inner();
oi.show();
b:被private或者static修饰。
如果被private修饰后,就不能再在除了外部类的其他类中使用。
如果被static修饰,并且没有被private修饰,使用方式如下:
外部类.内部类 名字 = 外部类.内部类对象;
举例:
Outer.Inner oi = new Outer.Inner();
oi.show();
B:局部位置
a:有名字
按照普通的方式使用即可。
b:没有名字,匿名内部类(掌握)
格式:
new 类或者接口()
{
重写方法,或者自定义方法
};
其实这里的本质是一个子类匿名对象。
前提:外部存在着一个类或者接口。

2:包,导入
包:其实就是文件夹。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值