实验6 继承与接口

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告

姓名学号专业班级

课程名称 Java实验实验日期成绩指导教师批改日期实验名称实验 6 继承与接口

[实验目的]

1、掌握java 继承中父类及其子类的定义方法。

2、掌握子类重写父类同名方法的方法。

3、掌握接口的用法。

(1) 学习如何定义接口 ;

(2) 掌握接口的实现方式 ;

(3) 使用实现了接口的类 ;

(4) 理解接口与抽象类的区别。

[实验要求]

1、复习理论教学中所学的内容。

2、认真进行实验预习,查阅参考书,书写源程序,书写实验预习报告。

3、认真总结实验并书写实验报告。

[实验内容]

1、类的继承性练习

(1) 程序源代码如下。

public class Student{

protected String xm; //姓名,具有保护修饰符的成员变量

protected int xh;//学号

void setdata(String xm,int xh) //设置数据的方法

{

this.xm=xm;

this.xh=xh;

}

public void print() //输出数据的方法

{

System.out.println(xm+", "+xh);

}

}

import java.util.*;

public class Exe_1 extends Student{

public Exe_1(){};

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

Exe_1 text=new Exe_1();

System.out.println("请输入姓名和学号:");

text.setdata(input.next(), input.nextInt());

System.out.println("显示如下:");

text.print();

}

}

(2) 编译源并运行程序。贴图如下

(二)创建将被继承的类

(1) 程序功能:通过Student类产生子类CollegeStudent,其不仅具有父类的成员变量xm(姓名)、

xh(学号),还定义了新成员变量xy(学院)、bj(bj)。在程序中调用了父类的print 方法,同时可以看出子类也具有该方法。

程序代码:

class CollegeStudent extends Student {

protected String xy;

protected String bj;

//此处定义新的成员变量,均为protected类型

public static void main(String args[]) {

Student p1 = new Student();

p1.setdata("李四", 12321);

p1.print();

CollegeStudent s1 = new CollegeStudent();

s1.setdata("张三", 12345); // 调用父类的成员方法

s1.xy = "山西大学计算机学院"; // 访问本类的成员变量

s1.bj = "2011级计算机科学与技术"; // 访问本类的成员变量

s1.print();

System.out.print(s1.xm + ", " + s1.xy + ", " + s1.bj);

}

}

运行结果贴图:

(三)了解成员方法的覆盖方式

(1)编写覆盖了Object 类toString方法的一个类,并用System.out.println()输出该类的一个

对象。

程序代码:

class Circle {

private int radius;

public Circle(int radius) {

this.radius=radius;

}

// 定义一个参数的构造方法

// 对于私有成员radius进行get和set(定义getRadius()和setRadius())

// 定义求面积方法area()

public void setRedious(int radius){

this.radius=radius;

}

public int getRadius(){

return radius;

}

public double getArea(int radius){

double area;

area=radius*radius*Math.PI;

return area;

}

public String toString() {

return"圆半径:" + getRadius() + " 圆面积:" + getArea(radius);

}

}

public class GetArea {

public static void main(String args[]) {

Circle c = new Circle(10);

System.out.println("\n" + c.toString());

}

}

运行结果贴图:

相关文档
最新文档