java继承和多态的实验报告_JAVA,继承和多态实验报告
实验项目名称
:
继承和多态
( 所属课程 :
Java 语言程序设计
)
院 系:
专业班级:
姓 名:
学号:
实验地点:
指导老师:
本实验项目成绩:
教师签字:
日期:
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
程序代码为:
Class 包 package Class; public class Shape {
private String color = "while";
public Shape(String color){
this.color = color;
}
public void setColor(String color){
this.color = color;
}
public String getColor(){
return color;
}
public double getArea(){
return 0;
}
public double getPerimeter(){
return 0;
}
public String toString(){
return "color:" + color;
}
}
package Class; public class Circle extends Shape {
private double radius;
public Circle(String color,double radius) {
super(color);
this.radius = radius;
}
public void setRadius(double radius){
this.radius = radius;
}
public double getRadius(){
return radius;
}
public double getCircleArea(){
return 3.14*radius*radius;
}
public double getCirclePerimeter(){
return 3.14*2*radius;
}
public String toString(){
return "The Area is:" + getCircleArea()
+ "\nThe Perimeter is:" + getCirclePerimeter();
}
}
package Class; public class Rectangle extends Shape{
private double width;
private double height;
public Rectangle(String color,double width,double height) {
super(color);
this.width = width;
this.height = height;
}
public void setWidth(double width){
this.width = width;
}
public double getWidth(){
return width;
}
public void setHeight(double height){
this.height = height;
}
public double getHeight(){
return height;
}
public double getRectangleArea(){
return width*height;
}
public double getRectanglePerimeter(){
return 2*(width + height);
}
public String toString(){
return "The Area is:" + getRectangleArea()
+ "\nThe Perimeter is:" + getRectanglePerimeter();
}
}
package Class; public class Triangle extends Shape{
private double a;
private double b;
private double c;
private double s;
public Triangle(String color,double a,double b,double c, double s){
super(color);
this.a = a;
this.b = b;
this.c = c;
this.s = s;
}
public void setA(double a){
this.a = a;
}
public double getA(){
return a;
}
public void setB(double b){
this.b = b;
}
public double getB(){
return b;
}
public void setC(double c){
this.c = c;
}
public double getC(){
return c;
}
public double getTriangleArea(){
return Math.sqrt(s*(s-a)*(s-b)*(s-c));
}
public double getTrianglePerimeter(){
return a + b + c;
}
public String toString(){
return "The Area is:" + getTriangleArea()
+ "\nThe Perimeter is:" + getTrianglePerimeter();
}
}
Main 包 package Main; import Class.Shape; import Class.Circle; import Class.Rectangle; import Class.Triangle;
import java.util.Scanner; public class test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入圆的半径:
");
double radius = input.nextDouble();
Circle circle = new Circle(null, radius);
System.out.println(circle.toString());
System.out.print("\n请输入矩形的宽:
");
double width = input.nextDouble();
System.out.print("请输入矩形的高:
");
double height = input.nextDouble();
Rectangle rectangle = new Rectangle(null, width, height);
System.out.println(rectangle.toString());
System.out.print("\n请输入三角形的第一条边 a:
");
double a = input.nextDouble();
System.out.print("请输入三角形的第二条边 b:
");
double b = input.nextDouble();
System.out.print("请输入三角形的第三条边 c:
");
double c = input.nextDouble();
double s = (a + b + c)/2;
Triangle triangle = new Triangle(null, a, b, c, s);
System.out.println(triangle.toString());
}
}
运行结果为:
4.实验总结
(1)通过实验掌握了类的继承机制。
(2)熟悉了类中成员变量和方法的访问控制。
(3)了解了方法或构造方法多态性。
java继承和多态的实验报告_JAVA,继承和多态实验报告相关推荐
- java继承和多态的实验报告_Java继承与多态实验报告.doc
Java继承与多态实验报告 西 安 邮 电 大 学 (计算机学院) 课内实验报告 实验名称: 继承与多态 专业名称: 计算机科学与技术 班 级: 计科1405班 学生姓名: 高宏伟 学 号: 指导教师 ...
- java 类与对象实验报告_java类与对象实验报告
java类与对象实验报告 西 安 邮 电 大 学(计算机学院)课内实验报告实验名称: 类与对象 专业名称: 计算机科学与技术班 级: 计科1405班 学生姓名: 高宏伟 学 号: 04141152指导 ...
- java类对象实验问题_Java类与对象实验答案
Java类与对象实验答案Tag内容描述: 1.Java实验报告 计科.信工版2013-2014-2 实验报告 一.实验项目:类与对象 二.实验目的: 1. 学会使用类来封装对象的属性和功能 2. 掌握 ...
- java继承机制实验报告_JAVA继承实验报告.doc
JAVA继承实验报告 JAVA语言程序设计 实验报告 实验一 实验题目: 面 向 对 象 编 程 指导老师: 卢照 专业班级:计算机科学与技术系1106班 姓 名:*****) 2014年3月20日 ...
- java销售管理系统实验报告_java学生通讯录管理系统实验报告
java学生通讯录管理系统实验报告 (4页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 宁波大红鹰学院 课课程程设设计计课程设计名称: ...
- java猜数字游戏实验报告_java猜数游戏实验报告.doc
java猜数游戏实验报告 课 程 设 计 报 告 课程设计名称 Java程序设计-猜数游戏 指导教师 钟世刚 专业 班级 信息安全 学 号 姓 名 成 绩 一.设计任务与要求1 1.1 设计任务与要求 ...
- java商品信息管理实验报告_java学生信息管理系统实验报告
java学生信息管理系统实验报告 JAVA 程序设计实验报告学 号:姓 名: 班 级: 实验.Java 课程设计--------学生信息管理系统一.实验目的 1. 掌握 Java 基本语法2. 理解面 ...
- java字节字符流实验报告_Java第09次实验(IO流)--实验报告
0.字节流与二进制文件 我的代码 用DataOutputStream和FileOutputStream将Student对象写入二进制文件student.data package test; impor ...
- java基础之多态的详细解释_JAVA基础之多态
下面我为大家讲解一下JAVA基础之多态,希望大家喜欢. 多态就是事物存在的多种形态,比如你在大街上看见一只藏獒,你可以说这只藏獒真凶猛,也可以说这只狗真凶猛,还可以说这个动物真凶猛,以上三种说法其实都 ...
最新文章
- Windows SQL Server 2008 群集(摘自网络)
- 关于fullcalendar里显示json格式的events(java)
- python中的re模块——正则表达式
- 【示例】Lucene创建索引库编程步骤
- python算法与数据结构-归并排序算法
- 合肥工业大学宣城校区大学生创新创业训练项目申报书:“基于Spark平台的人工智能知识的知识图谱构建”...
- 博为峰JavaEE技术文章 —— Hibernate域模型(2)
- 读书笔记2013第18本:《像外行一样思考,像专家一样实践》
- Web前端笔记-解决Vue编写的输入框(input、textarea等)使用JS设置value时提交表单无效的问题
- Flink部署、使用、原理简介
- 腾讯网游加速器大升级!5月31日起仅支持国服游戏加速 你用过吗?
- 从智能门锁,看3D视觉的安全性突围
- JDBC驱动连接SQLserver数据库
- 计算机老是蓝屏需要重新启动3,电脑蓝屏重启,教您电脑经常自动蓝屏重启怎么办...
- 矩阵相乘求导(转载)
- Hibernate(9)_多对一的关联映射
- 泰坦尼克号幸存者逻辑回归预测
- 加拿大低龄高中留学规划与过程管理三个关键点
- 程序人生 - 敬酒常识
- P1717 Finger guessing