实验二 Java语言基础(7)

2020-04-21 00:29

图 3.9

7、 类的多态性练习

类的继承发生在多个类之间,而类的多态只发生在同一个类上。在一个类中,可

以定义多个同名的方法,只要确定它们的参数个数和类型不同。这种现象称为类的多态。多态使程序简洁,为程序员带来很大便利。在OOP 中,当程序要实现多个相近的功能时,就给相应的方法起一个共同的名字,用不同的参数代表不同的功能。这样,在使用方法时不论传递什么参数,只要能被程序识别就可以得到确定的结果。类的多态性体现在方法的重载(overload)上,包括成员方法和构造方法的重载。 7.1、方法的重载

(1) 程序功能:使用同名方法对两个、三个或用数组容纳的一组数进行排序 (2) 程序源代码如下。 class IntSort { public String sort(int a, int b) { if (a>b) return a+\ else return b+\} public String sort(int a, int b, int c) { int swap; if (a

图 3.10

7.2、构造函数的重载

构造方法的名称和类同名,没有返回类型。尽管构造方法看起来和一般的成员方法没有差别,但它不是方法,也不是类的成员。因此,构造方法不能直接调用,只能由new 操作符调用。构造方法对于类是十分重要的,对象的初始化任务要靠构造方法来完成。重载构造方法的目的是提供多种初始化对象的能力,使程序员可以根据实际需要选用合适的构造方法来初始化对象。 (1) 程序源代码如下。 class RunDemo { private String userName, password; RunDemo() { System.out.println(\全部为空!\} RunDemo(String name) { userName=name; } RunDemo(String name, String pwd) { this(name); password=pwd; check(); } void check() { String s=null; if (userName!=null) s=\用户名:\ else s=\用户名不能为空!\ if (password!=\ s=s+\口令无效!\ else s=s+\口令:********\ System.out.println(s); } } public class EXP3_12 { public static void main(String[] args) { new RunDemo(); new RunDemo(\张三\ new RunDemo(null,\李四\ new RunDemo(\王五\ } } (2) 编译并运行,结果如图3.11所示。

图 3.11

8、 使用接口技术

(1) 程序功能:在程序中声明一个自定义接口NL,用来计算一个人年龄。 (2) 程序源代码如下。 interface NL{ //定义接口 int year = 2004; int age(); void output(); } public class EXP3_13 implements NL{ //实现接口 String xm; //类自己的成员变量(姓名) int csrq; //类自己的成员变量(出生日期) public EXP3_13(String n1,int y){ //类构造方法 xm = n1; csrq = y; } public int age(){ //实现接口的方法 return year - csrq; //这里直接使用了接口中的常量year } public void output() { //实现接口的方法 System.out.println(this.xm +\今年的年龄是\岁\ } public static void main (String args[]) //类自己的成员方法 { NL a = new EXP3_13(\张三\ a.output(); } } (3) 编译并运行,结果如图3.12。

图 3.12


实验二 Java语言基础(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:绘本教案:水娃娃漫游记

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: