类的多态性实验报告.pdfVIP

  • 40
  • 0
  • 约6.26千字
  • 约 7页
  • 2022-07-08 发布于上海
  • 举报
类的多态性实验报告 ⼀、实验⽬的: 理解类的多态性,掌握⽅法的继承、重载和覆盖,掌握如何从键盘输⼊数据以及多重循环的使⽤。 ⼆、实验环境: Eclipse 三、实验内容: (⼀)类的多态性练习 理解类的多态性 类的继承发⽣在多个类之间,⽽类的多态只发⽣在同⼀个类上。在⼀个类中,可以定义多个同名的⽅法,只要确定它们的参数个数和类型不同。这种现象称 为类的多态。 多态使程序简洁,为程序员带来很⼤便利。在OOP 中,当程序要实现多个相近的功能时,就给相应的⽅法起⼀个共同的名字,⽤不同的参数代表不同的功能。 这样,在使⽤⽅法时不论传递什么参数,只要能被程序识别就可以得到确定的结果。 类的多态性体现在⽅法的重载(overload )上,包括成员⽅法和构造⽅法的重载。 ⽅法的重载 ⽅法的重载是指对同名⽅法的不同使⽤⽅式。 程序功能:对不同的数进⾏排序输出。在IntSort 类中定义2 个同名的⽅法sort。 编写KY5_1.java ⽂件,源代码如下。 class IntSort { public String sort (int a, int b) { if (ab) return a+ +b; else return b+ +a; } public String sort (int a, int b, int c) { int swap; if (ab) { swap=a; a=b; b=swap; } if (ac) { swap=a; a=c; c=swap; } if (bc) { swap=b; b=c; c=swap; } return a+ +b+ +c; } } public class KY5_1 { public static void main(String args[] { int a=30, b=12, c=40; IntSort s=new IntSort(); System.out.println( 两个数的排序结果:+s.sort(a,b ; System.out.println( 三个数的排序结果:+s.sort(a,b,c ; } } 将程序的输出结果记录在实验报告中。 两个数的排序结果:30 12 三个数的排序结果:40 30 12 请在实验报告中说明在IntSort 类中出现的下⾯两个同名的⽅法各⾃的功能? public String sort (int a, int b 定义两个变量,实现对两个数的排 public String sort (int a, int b, int c 定义三个变量,实现对两个数的排 6)请在实验报告中指出程序中是哪条语句调⽤了⽅法I,哪条语句调⽤了⽅法II? s.sort(a,b 调⽤了⽅法I s.sort(a,b,c 调⽤了⽅法II (⼆)构造⽅法的重载 构造⽅法的名称和类同名,没有返回类型。尽管构造⽅法看起来和⼀般的成员⽅法没有差别,但它不是⽅法,也不是类的成员。因此,构造⽅法不能直接调 ⽤,只能由new 操作符调⽤。 构造⽅法对于类是⼗分重要的,对象的初始化任务要靠构造⽅法来完成。重载构造⽅法的⽬的是提供多种初始化对象的能⼒,使程序员可以根据实际需要选 ⽤合适的构造⽅法来初始化对象。 编写程序KY5_2.java,将其中的类RunDemo的构造⽅法进⾏重载。源代码如下。 class RunDemo { private String userName, password; RunDemo(String name)

文档评论(0)

1亿VIP精品文档

相关文档