发表于: 2017-03-12 09:46:32

2 1441


今天完成的事情:

学习Object类的基本知识,以及toString()方法;

学习用super关键字;

明天计划的事情:

学习组合,final修饰变量

遇到的问题:

为什么在对于java.lang.Object进行 Ctrl+单击  时,会出现找不到源代码的情况?

  


解决方法:

先找到源代码压缩包:src.zip

然后,单击“Attach Source...”按钮,出现如下图所示的对话框,选择External Location单选框,之后单击”External File...“按钮,选择src.zip即可。

成功之后就会显示源代码:

收获:

1) 关于Object类的API文档注释:Object类是所有Java类的根基类。子类继承父类,就可以得到全部父类的属性和方法。

   

2) 关于Object类中toString()方法的注释:

  

3)  子类对于Object类可以进行方法重写override

4) super关键字调用构造方法

先复习一下this关键字的用法:this.指此时代表当前对象,能操作当前类里面的所有属性及方法,以及父类继承而来能被访问修饰符允许的属性和方法。


super.指代当前对象类的父类对象部分,不能操作到本类的属性和方法,能操作到父类的能被父类访问修饰符修饰符允许的属性和方法,只有当本类中调用被重写前的效果时使用super.的方法。


在Java中,this通常指当前对象,super则指父类的。当你想要引用当前对象的某种东西,比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的,当然,this的另一个用途是调用当前对象的另一个构造函数,这些马上就要讨论。如果你想引用父类的某种东西,则非super莫属。

小结:

    super是直接父类对象的引用,可以通过super来访问父类中被子类覆盖的属性或方法。

    普通方法: 没有顺序限制,可以随便调用;

    构造函数中:任何类的构造函数中,若是构造函数的第一行代码没有显示的调用super(...);那么Java默认都会调用super();作为父类的初始化函数。所以,这里的super();加不加都无所谓。



返回列表 返回列表
评论

    分享到