方法重载与重写,返回类型

重载和重写的博客已经够多了,这里我们讨论一下他们的返回类型。

重写:

  •     首先是类的不能存在两个完全相同构造方法(同时不能以返回类型来重载方法相信大家都是知道滴)

方法重载与重写,返回类型


  • 类中的普通成员方法可以和构造方法重名(大小写一致都不是问题),但是必须要有返回数据类型(返回void也可以)。也就是说构造方法是不能自己返回类型的,默认返回实例对象。

方法重载与重写,返回类型方法重载与重写,返回类型


  • 重写的方法返回类型可以改变,但返回类型必须是父类的子类型

下面这种是符合要求的(返回的是Java类型系统中的不同层次类型)

\方法重载与重写,返回类型方法重载与重写,返回类型

下面这种也是符合要求的(自定义层次的类型,即Object2是继承Object1的,也就是Objec2t是Object1的子类型):

方法重载与重写,返回类型    方法重载与重写,返回类型

但是下面这种就不符合要求了(重写方法返回了父类型):

方法重载与重写,返回类型方法重载与重写,返回类型