姓名 实验报告成绩
评语:
等级 优 项目 实验内容是否做好预习 实验过程所应用的原理是否掌握消化 实验过程是否认真主动 实验技能是否熟练 实验数据是否真实可靠 实验报告格式是否合乎规范 良 中 差
指导教师(签名) 年 月 日
一、 实验目的
1. 掌握接口的概念,实现定义接口的方法。
2. 理解抽象类的概念。
3. 理解接口与抽象类的区别。
二、实验内容
1. 设计一个Person 类,其成员变量有:姓名(name)、性别(gender)、年龄(age);再设计一个Student类,它是类Person的子类,其成员变量有:学号(id)、班名(cname)、成绩(score),类Student中要有一个方法 display(),用来显示一个学生的信息。 编写一个测试程序,创建一个Student类的对象,要求name和id 是自己的姓名和学号,输出学生的各种信息,学生的基本信息在类Student的带参数的构造方法中设定。
public class Main { }
class Person{ }
class Student extends Person{ }
String id; String cname; int score; Student(String name,String gender,String age,String id,String cname,int score){ }
void display(){ }
System.out.println(name+' '+gender+' '+age+' '+id+' '+cname+' '+score); this.name=name; this.gender=gender; this.age=age; this.id=id; this.cname=cname; this.score=score; String name; String gender; String age;
public static void main(String args[]){ }
Student A = new Student(\,\男\,\,\,\计算班\,100); A.display();
1
2. 定义一个类A,该类有一个方法f,方法f可以输出英文字母,再定义一个类B是A的子类,子类B不能重写父类A的方法f,子类有一个方法g,可以输出中文字符串。
编写测试程序,创建B的对象,输出英文字母和中文字符串。
public class Main { } class A{ }
class B extends A{
void g(String str){ } }
System.out.println(str); void f(char c){ }
System.out.println(c);
public static void main(String args[]){ B temp = new B(); temp.f('A'); temp.g(\你好\); }
3. 定义一个坐标类Pointer,成员变量包括x和y;成员方法有: (1)构造方法
(2)setX、setY、getX、getY、display方法 (3)类方法distance用来计算两点之间的距离
编写测试程序,创建Pointer的两个对象并计算两个点坐标的距离。
public class Main { }
class Pointer{
double x,y;
Pointer(double x,double y){ }
this.x=x; this.y=y;
public static void main(String args[]){ }
Pointer p1 = new Pointer(1.0,1.0); Pointer p2 = new Pointer(0.0,0.0); System.out.println(p1.distance(p2));
2
}
void setX(double x){ }
void setY(double y){ }
double getX(){ }
double getY(){ }
double distance(Pointer b){ }
return Math.sqrt((x-b.x)*(x-b.x)+(y-b.y)*(y-b.y)); return y; return x; this.y=y; this.x=x;
4. 定义一个抽象类Area、两个Area的子类RectArea和RoundArea,以及一个实现类ImpleArea。要求如下
(1)抽象类Area类中只包含一个抽象方法double area()。
(2)子类RoundArea类通过覆盖父类中的抽象方法area()来求圆的面积,另一个
子类RectArea类通过覆盖父类中的抽象方法area()求长方形的面积。
(3)圆的半径和长方形的边分别定义为子类RoundArea类和RectArea类的域,都
为double娄型。
(4)ImpleArea类中创建对象,接收键盘输入,输入内容分别为圆的半径和长方
形的边,并求出圆和长方形的面积,在屏幕上显示。
import java.util.Scanner; public class Main { }
abstract class Area{ }
class RoundArea extends Area{
double r;
RoundArea(double r){
this.r=r;
abstract double area();
public static void main(String args[]){ }
ImpleArea.test();
3