- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西 安
通过编程和上机实验理解 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
文档评论(0)