java方法的签名_Java 方法签名

方法的名字和參数列表成为方法的签名。注意,方法签名不包含方法的返回类型。本文通过測试理解參数列表的真正含义,以及在继承中重写方法时方法的返回值与父类中方法的返回值应该有如何的关系。

这里有三个辅助类:

package methodsign;

public class Ancestor {

}

package methodsign;

public class Parent extends Ancestor {

}

package methodsign;

public class Other {

}

以下是測试类。測试结果在凝视中说明:

package methodsign;

/**

* 測试方法签名

* 方法的名字和參数列表称为方法的签名

* @author yuncong

*

*/

public class Person {

private String name;

private String gender;

private int age;

public Person() {

// TODO Auto-generated constructor stub

}

/**

* 由构造器1和构造器2不可同一时候存在可知。方法签名的參数列表详细是指參数的类型列表。

* 由构造器1和构造器3能够同一时候存在可知,方法签名的參数类型列表还与參数类型的顺序有关,也就是说,

* 即使方法括号里的參数个数和类型全然一样,仅仅要參数类型的顺序不同,也是不同的參数类型列表

*/

// 构造器1

public Person(String name, String gender, int age) {

super();

this.name = name;

this.gender = gender;

this.age = age;

}

// 构造器2

public Person(String gender, String name, int age) {

super();

this.name = name;

this.gender = gender;

this.age = age;

}

// 构造器3

public Person(String name, int age, String gender) {

super();

this.name = name;

this.age = age;

this.gender = gender;

}

public Ancestor getAncestor() {

return new Ancestor();

}

}

package methodsign;

public class Student extends Person {

/**

* 方法1是正确的,方法2是错误的,说明在子类中重写父类的方法。方法的返回值

* 必须与父类中该方法的返回值一样或者是父类中该方法返回值的子类

*/

// 方法1

public Parent getAncestor() {

return new Parent();

}

// 方法2

public Other getAncestor() {

return new Other();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值