Java_log2000_类与对象7

类篇entry5

关键词: 引用; 类的其他相关内容;

引用

  • 引用如何形成:先声明,后赋予对象,成为引用。
  • 抽象类声明进行引用有什么特点?
    抽象类声明可以引用所有具体子类对象,此概念可以推广到所有具有父子关系的类,以及接口和实现类。
  • 引用可以替换吗?
    替换是有原则的:父类引用可以指向子类对象,子类声明不能引用平行级别的其它类的对象,也不能引用父类对象。
  • 父类声明和子类声明引用同一个子类对象有什么区别?
    父类声明是从父类的角度去引用对象,子类声明是从子类角度引用对象。父类引用子类对象时,可以经过显式的转化赋给子类的声明,但子类的引用赋值给父类的声明则不需要。
  • 接口声明进行引用有什么特点?
    只能引用实现类对象的接口方法。
引用比较
  • instanceof的用法:判断某个对象是否为某个类的可引用实例。
  • equals方法:equals方法是object的方法,因此,所有类可以利用它比较本引用和某个引用是否指向同一对象。
  • “==” 如果两边是对象引用则比较的是它们的引用是否相同;如果两边是数值,则比较的是它们的值(如果值类型不同,有可能发生类型转化,例如10==10.0将返回true);如果一边是引用,一边是值,则编译错误。
  • 引用比较的案例

类的其它相关内容

类的完整定义形式
[修饰符] class 类名 [extends 父类] 
                               [implements 接口名1,接口2]
{  类成员变量;
   类方法;}
注:其中修饰符为:public、缺省、abstractfinal
                                不能被privateprotected所修饰。
内部类

内部类就是在某个类的内部又定义了一个类。

匿名内部类

所谓匿名内部类就是在类中需要实例化这个类的地方,通常为方法内,
定义一个没有名称的类。其通常的实现格式为:

格式一:
new 类A() {
   方法体
}
此时产生的对象是类A的子类对象。

格式二:
new 接口A() {
   方法体
}
此时产生的对象是接口A的实现类。
匿名对象

匿名对象就是在产生对象时没有显式地为这个对象建立引用。
例如Person p1 = new Person();p1.shout();
如果改为new Person().shout();就是匿名对象了。

匿名对象在两种情况下经常使用:

  1. 如果对一个对象只需要进行一次方法调用。
  2. 将匿名对象作为参数传递给一个函数调用。
类对象

在java.lang包中有一个特殊的类——Class(注:同关键字class区别的地方是首字母大写),它也继承Object类。

通过调用对象方法getClass而得到Class对象,进而我们可以知道类的相关的一些特性,如:类的名称、类的包、类的方法、类的父类等待。


visitor tracker
访客追踪插件


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值