JAVA Object extends

1.一个类如果没有指定extends 那么这个类就是默认extends Object 这个类。 并且继承了这个类的方法,如equals(); toString(); 这两个方法中用到了关键字this . 可以参考下面this和super的解释。

2.关键字this和super

this是指向当前对象。

super是指向直接父类对象。 也就是该类继承的类。 如果没有指定父类默认是指向Object类 。 一个构造器如Student这个类的 构造器 如下:

Student(){

//默认有一个super()构造器,这个构造器指向了父类的地址。 从而构造了父类的对象,才能够调用父类的方法和属性

super();

}

一个类继承其父类的时候也会继承他的方法和属性。如A继承B , B 继承C ,C是继承Object. 

调用  A a = new A(); 的时候会调用A中的构造方法,因为方法中默认是有一个super()构造方法的,然后调用了B , 接着调用了C , 调用了Object。 这时候我们就会创建一个Obeject对象,接着回到C类中。 也会创建一个C的对象, 不过这个对象是继承Object类, 所以包含了Object类中的对象和方法。(即使重写了Object类中的方法也不会删除掉,到时候调用的时候会先去C类中找有没有这个类的方法和属性,如果没有再到Object类中寻找 。 同样接着会创建一个包含C对象的B对象, 接着创建一个包含B对象的A对象。)

重写规则之一:重写方法不能比被重写方法限制有更严格的访问级别。(比如父类中的是public修饰的方法, 子类中不能是低于public修饰的方法。 因为如果是子类是private 修饰的话,那么就破坏了继承的定义。从而访问不到我们需要的方法了。)

重写规则之二:参数列表必须与被重写方法的相同。

重写规则之三:返回类型必须与被重写方法的返回类型相同。

重写规则之四:重写方法不能抛出新的异常或者比被重写方法声明的检查异常更广的检查异常。但是可以抛出更少,更有限或者不抛出异常。

重写规则之五:不能重写被标识为final的方法。

重写规则之六:如果一个方法不能被继承,则不能重写它

转载于:https://my.oschina.net/u/3138201/blog/821722

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值