Java继承与多态实验报告课案.doc
文本预览下载声明
西 安
通过编程和上机实验理解 Java 语言的继承和多态特性,掌握变量的隐藏、方法的覆盖、重载,掌握抽象类和接口的使用。
二、实验要求
1.编写体现类的继承性(成员变量、成员方法、成员变量隐藏)的程序。
2.编写体现类的多态性(成员方法重载)的程序。
3.编写体现类的多态性(构造方法重载)的程序。
4.编写使用接口的程序。
三、实验内容
(一)类的继承
1.创建公共类Student.
(1)编写程序文件 Student.java,源代码如下:
public class Student
{
protectedString name; //具有保护修饰符的成员变量
protected int number;
void setData(String m,int h) //设置数据的方法
{
name =m;
number= h;
}
public void print() //输出数据的方法
{
System.out.println(name+, +number);
}
}
(2)编译 Student.java,产生类文件Student.class。
2.创建继承的类Undergraduate
(1)程序功能:通过 Student 类产生子类 undergraduate,其不仅具有父类的成员变量
name(姓名)、number(学号),还定义了新成员变量academy(学院)、department
(系)。在程序中调用父类的 print 方法。
编写 Undergraduate 程序:
class Undergraduate extends Student
{
【代码1】 //定义成员变量academy
【代码2】 //定义成员变量department
public static void main(String args[])
{
【代码3】 //创建一个学生对象s
【代码4】 //用父类的setData方法初始化对象s
【代码5】 //对象s调用print方法
【代码6】 //创建一个大学生对象u
【代码7】//调用父类的成员方法setData初始化对象u
【代码8】 //设置对象u的成员变量academy
【代码9】 //设置对象u的成员变量department
System.out.print(u.name+, +u.number+, +u.academy+, +u.department);
}
}
(3)编译并运行程序
注意:公共类 Student 与undergraduate 类要在同一文件夹(路径)内。
(二)方法的重载
(1)程序功能:对不同的数进行排序输出。在IntSort 类中定义3 个同名的方法sort。
(2)编写Sort.java 文件,源代码如下。
import java.awt.Graphics;
import java.applet.Applet;
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;
}
54
if (bc) {
swap=b;
b=c;
c=swap;
}
return a++b++c;
}
public String sort(int arr[]) {
String s=;
int swap;
for (int i=0; iarr.length; i++)
for (int j=0; jarr.length-1; j++)
if (arr[j]arr[j+1]) {
swap=arr[j];
arr[j]=arr[j+1];
arr[j+1]=swap;
}
for (int i=0; iarr.length; i++)
s=s+arr[i]+;
return s;
}
}
pub
显示全部