java实验报告样本2

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

实验项目名称:继承和多态

(所属课程:Java语言程序设计)

院系:计算机科学与信息工程专业班级:12级物联网工程姓名:张懿

学号:201203040042 实验地点:A-06 411 指导老师:张阳

本实验项目成绩:教师签字:日期:

1.实验目的

(1)掌握类的继承机制。

(2)熟悉类中成员变量和方法的访问控制。

(3)熟悉方法或构造方法多态性。

2.实验内容

(1)模拟编写程序,理解类的继承、多态、继承和多态规则。

(2)独立编程,实现类的继承和多态。

3.实验作业

设计一个类Shape(图形)包含求面积和周长的area()方法和perimeter()方法以及设置颜色的方法SetColor(),并利用Java多态技术设计其子类Circle (圆形)类、Rectangle(矩形)类和Triangle(三角形)类,并分别实现相应的求面积和求周长的方法。每个类都要覆盖toString方法。

海伦公式:三角形的面积等于s(s-a)(s-b)(s-c)的开方,其中s=(a+b+c)/2 4.实验程序

import java.util.Scanner;

public class TEST {

public static void main(String[] args) {

float radius;

float chang,kuan;

float a,b,c;

Scanner input = new Scanner(System.in);

System.out.print("请输入圆的半径:");

radius = input.nextFloat();

Circle circle = new Circle(radius);

System.out.println("圆的面积为:"+circle.area()+" 圆的周长为:"+circle.perimeter()+"\n"+circle.toString());

System.out.print("请输入矩形的长:");

chang = input.nextFloat();

System.out.print("请输入矩形的宽:");

kuan = input.nextFloat();

Rectangle rectangle = new Rectangle(chang,kuan);

System.out.println("矩形的面积为:"+rectangle.area()+" 矩形圆的周长为:"+rectangle.perimeter()+"\n"+rectangle.toString());

System.out.print("请输入三角形的第一条边:");

a = input.nextFloat();

System.out.print("请输入三角形的第二条边:");

b = input.nextFloat();

System.out.print("请输入三角形的第三条边:");

c = input.nextFloat();

Triangle triangle = new Triangle(a,b,c);

System.out.println("三角形的面积为:"+triangle.area()+" 三角形圆的周长为:"+triangle.perimeter()+"\n"+triangle.toString());

}

}

class Shape{

private String color;

public Shape(){

}

public double area(){

return 0;

}

public double perimeter(){

return 0;

}

public void Setcolor(String color){

this.color = color;

}

}

class Circle extends Shape{

private float radius;

public Circle(float radius){

this.radius = radius;

}

public double area(){

return 3.14 * radius * radius;

}

public double perimeter(){

return 3.14 * 2 * radius;

}

public String toString(){

return super.toString() + "这是一个描述该对象的字符串";

}

}

class Rectangle extends Shape{

private float chang;

private float kuan;

public Rectangle(float chang,float kuan){

this.chang = chang;

this.kuan = kuan;

}

public double area(){

return chang * kuan;

}

public double perimeter(){

return (chang+kuan) * 2;

}

public String toString(){

return super.toString() + "这是一个描述该对象的字符串";

}

}

class Triangle extends Shape{

相关文档
最新文档