Java实验报告样本
Java实验三实验报告1

Java实验三实验报告1一、实验目的本次 Java 实验的主要目的是深入理解和掌握 Java 中的面向对象编程概念,通过实际的编程实践,提高对类、对象、继承、多态等特性的运用能力,同时培养良好的编程习惯和代码规范。
二、实验环境1、操作系统:Windows 102、开发工具:Eclipse IDE for Java Developers三、实验内容1、设计一个名为`Shape` 的抽象类,其中包含一个抽象方法`calculateArea()`用于计算图形的面积。
2、分别创建`Circle`(圆形)、`Rectangle`(矩形)和`Triangle`(三角形)类继承自`Shape` 类,并实现各自的`calculateArea()`方法来计算具体图形的面积。
3、创建一个测试类`TestShapes`,在其中创建不同图形的对象,并调用其计算面积的方法,输出结果。
四、实验步骤1、创建`Shape` 抽象类```javaabstract class Shape {abstract double calculateArea();}```2、创建`Circle` 类继承自`Shape` 类```javaclass Circle extends Shape {private double radius;public Circle(double radius) {thisradius = radius;}@Overridedouble calculateArea(){return MathPI radius radius;}}```3、创建`Rectangle` 类继承自`Shape` 类```javaclass Rectangle extends Shape {private double length;private double width;public Rectangle(double length, double width) {thislength = length;thiswidth = width;}@Overridedouble calculateArea(){return length width;}}```4、创建`Triangle` 类继承自`Shape` 类```javaclass Triangle extends Shape {private double base;private double height;public Triangle(double base, double height) {thisbase = base;thisheight = height;}@Overridedouble calculateArea(){return 05 base height;}}```5、创建测试类`TestShapes````javapublic class TestShapes {public static void main(String args) {Circle circle = new Circle(50);Rectangle rectangle = new Rectangle(40, 60);Triangle triangle = new Triangle(30, 80);Systemoutprintln("圆形的面积:"+ circlecalculateArea());Systemoutprintln("矩形的面积:"+ rectanglecalculateArea());Systemoutprintln("三角形的面积:"+trianglecalculateArea());}}```五、实验结果运行测试类`TestShapes` 后,输出结果如下:```圆形的面积:78539816矩形的面积:240三角形的面积:120```六、实验中遇到的问题及解决方法1、在编写抽象类和子类的代码时,一开始对于抽象方法的定义和实现理解不够清晰,导致代码出现错误。
java语言程序设计实验报告

java语言程序设计实验报告篇一:Java实验八报告《Java语言程序设计》实验报告学生姓名:郭倩班级:信息112学号:201152275208实验地点:经管实验中心证券实验室指导教师:赵利平实验日期:实验环境:Windows 2000+JDK1.61. 实验目的(1)理解子类派生的概念(2)学习创建子类对象(3)掌握方法覆盖的使用2.实验内容(1)设计三个类:完成实验教材P52页程序清单4-2;(2)通过编制一个程序来加深对嵌套类、内部类和局部类的理解:完成实验教材P56页程序清单4-3;2. 实验过程报告撰写具体要求:上述实验内容要求写出源代码及运行结果。
实验内容(1)://Polymorphism.abstract class Student{final static int CourseNo=3;String name;String type;int[] courses;String courseGrade;public Student(String name){=name;courses=new int[CourseNo];courseGrade=null;}public abstract void calculateGrade();public String getName(){return name;}public String getType(){return type;}public String getCourseGrade(){return courseGrade;}public int getCourseScore(int courseNumber){return courses[courseNumber];}public void setName(String name){=name;}public void setType(String type){this.type=type;}public void setCourseScore(int courseNumber,int courseScore){this.courses[courseNumber]=courseScore;}}class Undergraduate extends Student{public Undergraduate(String name){super(name);type="本科生";}public void calculateGrade(){int total=0;double average=0;for(int i=0;i<CourseNo;i++){total+=courses[i];};average=total/CourseNo;if(average>=80&&average<100) coursegrade="优秀" else="" average="">=70&&average<80) coursegrade="良好" else="" average="">=60&&average<70) coursegrade="一般" else="" average="">=50&&average<60) courseGrade="及格";else courseGrade="不及格";}}class Postgraduate extends Student{public Postgraduate(String name){super(name);type="研究生";}public void calculateGrade(){int total=0;double average=0;for(int i=0;i<CourseNo;i++){total+=courses[i];};average=total/CourseNo;if(average>=90&&average<100) coursegrade="优秀" else="" average="">=80&&average<90) coursegrade="良好"else="" average="">=70&&average<80) coursegrade="一般" else="" average="">=60&&average<70) courseGrade="及格";else courseGrade="不及格";}}public class Polymorphism{public static void main(String[] args){Student[] students=new Student[5];students[0]=new Undergraduate("陈建平");students[1]=new Undergraduate("鲁向东");students[2]=new Postgraduate("匡晓华");students[3]=new Undergraduate("周丽娜");students[4]=new Postgraduate("梁欣欣");for(int i=0;i<5;i++){students[i].setCourseScore(0,87);students[i].setCourseScore(1,90);students[i].setCourseScore(2,78);}for(int i=0;i<5;i++){students[i].calculateGrade();}System.out.println("姓名"+" 类型"+" 成绩");}}System.out.println("-------------------------"); for(int i=0;i<5;i++){ System.out.println(students[i].getName()+" "+students[i].getType()+" "+students[i].getCourseGrade()); }(1) 都有(2) Student[] students=new Student[5];(3) Student是抽象的,不能用new操作符创建抽象类的实例。
JAVA实验报告--6个实验

three=newComputerAver(four);
two=newDelScore(three);
one=newInputScore(two);
}
publicvoidgivePersonScore(){
one.inputScore();
}
}
publicclassComputerAver {
姓名
学号
实验组
实验时间
指导教师
吴红梅
成绩
实验项目名称
上机实践二 运算符、表达式和语句
实验环境
Eclipse
实验内容及结果
实验一托运行李
charge=(int)weight*trainCharge;
charge=(int)(weight+0.5)*carCharge;
charge=(int)(weight*1000+0.5)*planeCharge;
运行结果:tank1的炮弹数量:9
tank2的炮弹数量:8
实验三家族的姓氏
【代码1】FamilyPerson.surname="李";
【代码2】father.setName("向阳");
【代码3】father.setSurname("张");
运行结果:父亲:张向阳
大儿子:张抗日
二儿子:张抗战
指导教师意见
姓名
学号
实验组
实验时间
指导教师
吴红梅
成绩
实验项目名称
实验环境
Eclipse
实验内容及结果
实验一Tank类
【代码1】double speed;
java实验实验报告

java实验实验报告Java 实验实验报告一、实验目的本次 Java 实验的主要目的是通过实际操作和编程实践,深入理解和掌握 Java 编程语言的基本概念、语法结构、面向对象编程的思想以及常用类库的使用。
同时,培养我们解决实际问题的能力和编程思维,提高代码的质量和可读性。
二、实验环境1、操作系统:Windows 102、开发工具:IntelliJ IDEA3、 JDK 版本:18三、实验内容(一)基本语法练习1、数据类型与变量在 Java 中,我们学习了不同的数据类型,如整数类型(`int`、`long`)、浮点数类型(`float`、`double`)、字符类型(`char`)和布尔类型(`boolean`)。
通过定义和使用这些变量,我们能够存储和操作各种类型的数据。
```javaint age = 25;double salary = 500050;char grade ='A';boolean isStudent = true;```2、控制结构包括条件语句(`ifelse`、`switch`)和循环语句(`for`、`while`、`dowhile`)。
这些控制结构使我们能够根据不同的条件执行不同的代码块,或者重复执行一段代码。
```javaint num = 10;if (num > 5) {Systemoutprintln("Number is greater than 5");} else {Systemoutprintln("Number is less than or equal to 5");}switch (num) {Systemoutprintln("One");break;case 10:Systemoutprintln("Ten");break;default:Systemoutprintln("Unknown");}for (int i = 0; i < 5; i++){Systemoutprintln(i);}int count = 0;while (count < 3) {Systemoutprintln("Count: "+ count);count++;}count = 0;Systemoutprintln("Count: "+ count);count++;} while (count < 3);```(二)面向对象编程1、类与对象创建了自定义的类来表示现实世界中的实体。
java 实验报告

java 实验报告Java 实验报告引言:Java 是一种广泛应用于软件开发的计算机编程语言,具有跨平台、面向对象、简单易学等特点。
本实验报告将介绍我在学习 Java 过程中进行的一系列实验,包括实验目的、实验过程、实验结果和实验总结。
实验一:Hello World 程序实验目的:通过编写一个简单的 Hello World 程序,熟悉 Java 的开发环境和基本语法。
实验过程:1. 安装 Java Development Kit(JDK)并配置环境变量。
2. 使用文本编辑器编写以下代码:```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```3. 将代码保存为 HelloWorld.java。
4. 打开命令提示符,切换到代码所在目录,输入以下命令编译代码:```javac HelloWorld.java```5. 输入以下命令运行程序:```java HelloWorld```实验结果:命令提示符中输出 "Hello, World!"。
实验二:数据类型和运算符实验目的:了解 Java 的数据类型和运算符,并能够正确使用它们进行计算。
实验过程:1. 声明并初始化不同类型的变量,例如整数、浮点数和布尔类型。
2. 使用算术运算符进行基本的数值计算。
3. 使用逻辑运算符进行布尔类型的操作。
实验结果:根据实验过程中的代码和输入,得到相应的计算结果。
实验三:条件语句和循环结构实验目的:掌握 Java 中的条件语句和循环结构,能够根据不同的条件执行相应的代码块。
实验过程:1. 使用 if-else 语句实现条件判断。
2. 使用 switch-case 语句实现多分支选择。
3. 使用 for 循环、while 循环和 do-while 循环实现不同的循环结构。
java实验报告

java实验报告Java 实验报告一、实验目的本次 Java 实验的主要目的是通过实际编程操作,深入理解和掌握Java 语言的基本语法、面向对象编程的概念和方法,以及常用类库的使用。
同时,培养我们的问题解决能力、逻辑思维能力和代码规范意识,为今后的软件开发工作打下坚实的基础。
二、实验环境1、操作系统:Windows 102、开发工具:Eclipse IDE for Java Developers3、 JDK 版本:JDK 18三、实验内容本次实验共包括以下三个部分:1、 Java 基本语法练习变量与数据类型运算符与表达式控制流语句(ifelse、for、while、dowhile)数组2、面向对象编程实践类与对象的定义和使用构造函数与方法重载封装、继承与多态抽象类与接口3、 Java 常用类库应用String 类与字符串操作集合框架(ArrayList、HashMap)文件输入输出(File、FileReader、FileWriter)四、实验步骤及代码实现1、 Java 基本语法练习变量与数据类型:```javapublic class VariableDataType {public static void main(String args) {int age = 20;double salary = 50005;String name ="张三";boolean isStudent = true;Systemoutprintln("年龄:"+ age);Systemoutprintln("工资:"+ salary);Systemoutprintln("姓名:"+ name);Systemoutprintln("是否是学生:"+ isStudent);}}```运算符与表达式:```javapublic class OperatorExpression {public static void main(String args) {int num1 = 10;int num2 = 5;int sum = num1 + num2;int difference = num1 num2;int product = num1 num2;int quotient = num1 / num2;int remainder = num1 % num2; Systemoutprintln("和:"+ sum);Systemoutprintln("差:"+ difference);Systemoutprintln("积:"+ product);Systemoutprintln("商:"+ quotient);Systemoutprintln("余数:"+ remainder);}}```控制流语句:```javapublic class ControlFlowStatement {public static void main(String args) {// ifelse 语句int score = 80;if (score >= 90) {Systemoutprintln("优秀");} else if (score >= 80) {Systemoutprintln("良好");} else if (score >= 70) {Systemoutprintln("中等");} else if (score >= 60) {Systemoutprintln("及格");} else {Systemoutprintln("不及格");}// for 循环for (int i = 1; i <= 5; i++){Systemoutprintln("第" + i +"次循环");}// while 循环int j = 1;while (j <= 5) {Systemoutprintln("第" + j +"次 while 循环");j++;}// dowhile 循环int k = 1;do {Systemoutprintln("第" + k +"次 dowhile 循环");k++;} while (k <= 5);}}```数组:```javapublic class ArrayExample {public static void main(String args) {//一维数组int numbers ={1, 2, 3, 4, 5};for (int num : numbers) {Systemoutprintln(num);}//二维数组int matrix ={{1, 2, 3},{4, 5, 6},{7, 8, 9}};for (int row : matrix) {for (int num : row) {Systemoutprint(num +"");}Systemoutprintln();}}}```2、面向对象编程实践类与对象的定义和使用:```javapublic class Person {private String name;private int age;public Person(String name, int age) {thisname = name;thisage = age;}public void showInfo(){Systemoutprintln("姓名:"+ name +",年龄:"+ age);}public static void main(String args) {Person person1 = new Person("张三", 20);person1showInfo();}}```构造函数与方法重载:```javapublic class ConstructorOverloading {private String name;private int age;public ConstructorOverloading(String name) {thisname = name;}public ConstructorOverloading(String name, int age) {thisname = name;thisage = age;}public void showInfo(){if (age == 0) {Systemoutprintln("姓名:"+ name);} else {Systemoutprintln("姓名:"+ name +",年龄:"+ age);}}public static void main(String args) {ConstructorOverloading person1 = new ConstructorOverloading("张三");person1showInfo();ConstructorOverloading person2 = new ConstructorOverloading("李四", 25);person2showInfo();}}```封装、继承与多态:```java//父类class Animal {private String name;public Animal(String name) {thisname = name;}public void eat(){Systemoutprintln(name +"正在吃东西");}}//子类继承父类class Dog extends Animal {public Dog(String name) {super(name);}public void bark(){Systemoutprintln(name +"在叫");}}public class InheritancePolymorphism {public static void main(String args) {Animal animal = new Dog("小黑");animaleat();//向下转型为 Dog 类型调用 bark 方法if (animal instanceof Dog) {Dog dog =(Dog) animal;dogbark();}}}```抽象类与接口:```java//抽象类abstract class Shape {abstract void draw();}//实现抽象类的子类class Circle extends Shape {@Overridevoid draw(){Systemoutprintln("画一个圆");}}//接口interface Moveable {void move();}//实现接口的类class Car implements Moveable {@Overridepublic void move(){Systemoutprintln("汽车在移动");}}public class AbstractInterfaceExample {public static void main(String args) {Shape shape = new Circle();shapedraw();Moveable car = new Car();carmove();}}```3、 Java 常用类库应用String 类与字符串操作:```javapublic class StringOperation {public static void main(String args) {String str1 ="Hello, ";String str2 ="World!";String str3 = str1 + str2;Systemoutprintln(str3);int length = str3length();Systemoutprintln("字符串长度:"+ length);char charAt = str3charAt(5);Systemoutprintln("第 5 个字符:"+ charAt);boolean contains = str3contains("World");Systemoutprintln("是否包含 World:"+ contains);}}```集合框架(ArrayList、HashMap):```javaimport javautilArrayList;import javautilHashMap;import javautilMap;public class CollectionFramework {public static void main(String args) {// ArrayListArrayList<String> names = new ArrayList<>();namesadd("张三");namesadd("李四");namesadd("王五");for (String name : names) {Systemoutprintln(name);}// HashMapHashMap<String, Integer> ages = new HashMap<>();agesput("张三", 20);agesput("李四", 25);agesput("王五", 30);for (MapEntry<String, Integer> entry : agesentrySet()){Systemoutprintln(entrygetKey()+"的年龄是" +entrygetValue());}}}```文件输入输出(File、FileReader、FileWriter):```javaimport javaioFile;import javaioFileReader;import javaioFileWriter;import javaioIOException;public class FileIOExample {public static void main(String args) {//写入文件try (FileWriter writer = new FileWriter("outputtxt")){writerwrite("这是写入文件的内容");} catch (IOException e) {eprintStackTrace();}//读取文件try (FileReader reader = new FileReader("outputtxt")){int character;while ((character = readerread())!=-1) {Systemoutprint((char) character);}} catch (IOException e) {eprintStackTrace();}}}```五、实验结果与分析1、 Java 基本语法练习变量与数据类型:能够正确定义和使用各种数据类型的变量,并进行基本的运算和输出。
java实训报告6篇
java实训报告6篇在不断进步的时代,大家逐渐认识到报告的重要性,通常情况下,报告的内容含量大、篇幅较长。
一起来参考报告是怎么写的吧,以下是小编整理的java实训报告,欢迎阅读与收藏。
java实训报告1在上学期的最后一周和本学期的第一周,我和同组的学员在学校机房进行了JAVA暑期实训,现在已经结束了。
回首上学期的java学习,重点还是在学习概念等一些常识性的东西,Application应用程序和Applet小程序,它的开发工具、数据类型、变量、接口、输入输出流等。
学会分析异常,抛出异常,后期主要是小程序运用,Gui界面设计和事件。
我觉得这两种程序结构有很大的不同,不管是体系结构还是运行方式,都有很大的区别,而我主要偏向于小程序的学习。
因为我感觉它实用性比较大,可以做出很多不错的游戏、运用程序等,而且它比较灵活。
当然学知识不能仅凭自己的爱好和一时兴趣,要一步一个脚印、认认真真、踏踏实实,理论与实践相结合。
在掌握课本实例和内容之后,要有一定的扩展阅读和课外学习,充分全面的了解JAVA的应用和扩展运用。
在我所学的语言当中,我自认为JAVA是一门比较强大的面向对象编程语言。
不仅仅因为它的跨平台性,更多的是因为它的灵活多变和实用性,而且它比较的经典和强悍。
这次实训,面对老师布置的任务,一开始有些慌张和无措。
不过,事后我首先想到这和课本上的某些知识具有结合点,回忆和分析了老师教过的算法和具体实施方法,并综合考虑了其他的方面。
在编写时,一个小小的符号、一个常量变量的设定,这都无不考量着我的细心和严谨。
所以学习JAVA,不仅对我们以后学习其他语言有很大的好处,而且也让我们知道了和理解了作为一个编程人员首先应具有的良好心理素质,那就是冷静思考和专心致志。
在此次实训中,我意识到一个好的编程人员要善于沟通和团结拼搏。
实训结束后,我觉得要学好一门计算机语言必须牢记以下几点:1. 态度第一2.兴趣是关键3.敢于挑战4.不懈追求实训结束了,大家都有一种解脱的感觉。
JAVA标准实验报告模板
《JA V A》课程标准实验报告江苏科技大学计算机科学与工程学院基础部实验一流程控制语句2一、实验目的(1) 熟悉JDK 开发环境;(2) 熟悉一个编辑器如UltraEdit 的使用方法;(3) 掌握if 语句、switch 语句和break 语句的使用;(4) 掌握for 、while 、do while 循环语句的使用。
二、实验内容1. 安装开发环境JDK 。
2. 编写一个JAVA 应用程序:在输出窗口显示"Hello World!"3.使用while 语句,实现1至100整数求和,输出最后的和sum 。
4. 编写一个程序计算kk n n n n ⨯⨯⨯⨯+-⨯⨯-⨯-⨯,......,321)1(,......,)2()1((k ≤n)整型参数k 及 n 从命令行输入。
三、实验过程1. JDK 开发环境(1)JDK1.4.0开发环境安装在"C:\JDK1.4.0\"目录下。
(2)设置环境变量PATH 和CLASSPA TH :进入命令行(MS-DOS )方式,进行如下设置:SET PA TH=C:\JDK1.4.0\BIN;%PA TH%SET CLASSPATH=.; %CLASSPA TH%2. 掌握Java Application 程序开发过程(1)打开UltraEdit 编辑器。
(2)键入如下程序:/*** HelloWorld* 在输出窗口显示"Hello World!"*/public class HelloWorld{public static void main(String[] args){//在屏幕上输出 "Hello World!"System.out.println("Hello World!");}}(3)检查无误后(注意大小写)保存文件。
将文件保存在"D:\Java\"目录中,文件名为HelloWorld.java 。
java实验报告
java实验报告Java 实验报告一、实验目的本次 Java 实验旨在深入了解和掌握 Java 编程语言的基本概念、语法结构以及编程思想。
通过实际的编程实践,提高解决问题的能力,培养良好的编程习惯,并对 Java 面向对象编程的特性有更直观的认识和理解。
二、实验环境1、操作系统:Windows 102、开发工具:Eclipse IDE for Java Developers3、 JDK 版本:JDK 18三、实验内容(一)基本数据类型与控制结构1、编写程序,声明不同的基本数据类型变量,如整数型(int、long)、浮点型(float、double)、字符型(char)和布尔型(boolean),并进行赋值和输出操作。
```javapublic class DataTypeExample {public static void main(String args) {int intNumber = 10;long longNumber = 100L;float floatNumber = 314f;double doubleNumber = 314159;char charCharacter ='A';boolean booleanValue = true;Systemoutprintln("整数型:"+ intNumber);Systemoutprintln("长整型:"+ longNumber);Systemoutprintln("浮点型:"+ floatNumber);Systemoutprintln("双精度浮点型:"+ doubleNumber);Systemoutprintln("字符型:"+ charCharacter);Systemoutprintln("布尔型:"+ booleanValue);}}```2、运用条件判断语句(ifelse、switch)和循环结构(for、while、dowhile)实现简单的逻辑控制。
JAVA实验报告一
JAVA实验报告一一、实验目的本次实验的主要目的是通过实际操作,熟悉和掌握 Java 编程语言的基本语法、数据类型、控制结构以及面向对象编程的基本概念和方法。
培养我们运用 Java 解决实际问题的能力,为今后深入学习和应用 Java打下坚实的基础。
二、实验环境1、操作系统:Windows 102、开发工具:Eclipse3、 JDK 版本:18三、实验内容(一)Java 基础语法1、变量与数据类型在 Java 中,我们学习了不同的数据类型,如整数类型(int、long)、浮点数类型(float、double)、字符类型(char)和字符串类型(String)等。
通过定义和使用这些变量,我们能够存储和处理各种类型的数据。
例如:```javaint age = 20;double salary = 50005;char gender ='M';String name ="张三";```2、运算符与表达式掌握了各种运算符,如算术运算符(+、、、/、%)、关系运算符(==、!=、>、<、>=、<=)、逻辑运算符(&&、||、!)等。
能够运用这些运算符构建表达式来进行计算和逻辑判断。
比如:```javaint num1 = 10;int num2 = 5;int result = num1 + num2;boolean isGreater = num1 > num2;```3、控制结构(1)顺序结构程序按照语句的先后顺序依次执行。
(2)选择结构包括 ifelse 语句和 switch 语句,用于根据不同的条件执行不同的代码块。
```javaint score = 80;if (score >= 60) {Systemoutprintln("及格");} else {Systemoutprintln("不及格");}int day = 3;switch (day) {case 1:Systemoutprintln("星期一");break;case 2:Systemoutprintln("星期二");break;//其他 case 情况default:Systemoutprintln("未知");}```(3)循环结构包括 for 循环、while 循环和 dowhile 循环,用于重复执行一段代码。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息科学与工程学院《Java程序设计》上机实验报告专业班级电技电信0901 姓名刘雄楚学号 200912135020 实验时间 2011 年 9 月 30 日指导教师程骅成绩实验名称面向对象程序设计的继承、多态等特性的练习实验目的1)掌握类的继承机制。
2)熟悉类中成员变量和方法的访问控制。
3)熟悉方法或构造方法多态性。
4)熟悉接口的定义方法。
1class Person{public String name;public char sex;public int age;Person(String name,char sex,int age){=name;this.sex=sex;this.age=age;}}class Student extends Person{public String classno;public String sno;public void updateAge(int age){this.age=age;}public String toString(){System.out.println(+" "+this.sex+" "+this.age+""+this.classno+" "+this.sno);return +" "+this.sex+" "+this.age+" "+this.classno+" "+this.sno;}Student(String name,char sex,int age,String classno,String sno){ super(name,sex,age);this.classno=classno;this.sno=sno;}}public class TestStudentPerson{public static void main(String args[]){Student s1=new Student("jeck",'n',20,"12233344","2");s1.updateAge(21);s1.toString();}}2public class TestVirtualInvoke {static void doStuff(Shape s){s.draw();}public static void main(String[] args) { Circle c=new Circle();Triangle t=new Triangle();Line l=new Line();doStuff(c);doStuff(t);doStuff(l);}}class Shape{void draw(){System.out.println("Shape Drawing");}}class Circle extends Shape{void draw(){System.out.println("Shape Circle");}}class Triangle extends Shape{void draw(){System.out.println("Shape Triangle");}}class Line extends Shape{void draw(){System.out.println("Shape Line");}}使用抽象类abstractabstract class Shape{abstract void draw();}class Circle extends Shape{void draw(){System.out.println("Shape Circle");}}class Triangle extends Shape{void draw(){System.out.println("Shape Triangle");}}class Line extends Shape{void draw(){System.out.println("Shape Line");}}使用interface接口方法interface Shape{public void draw();}class Circle implements Shape{public void draw(){System.out.println("Shape Circle");}}class Triangle implements Shape{public void draw(){System.out.println("Shape Triangle");}}class Line implements Shape{public void draw(){System.out.println("Shape Line");}}思考题:import java.util.*;abstract class Employee{ String name;long no;static long id=1000;abstract double getPay();Employee(String name){ =name;id=id+1;}};class Manager extends Employee{double pay=8000;double getPay(){return 8000;}Manager(String name){super(name);no=id;}public String toString(){return"name:"+name+" no:"+no+" pay:8000";} };class Sale extends Employee{ long saleNum;double getPay(){return saleNum*0.04;}Sale(String name,long saleNum){super(name);no=id;this.saleNum=saleNum;}public String toString(){return"name:"+name+" no:"+no+" pay:"+getPay();} }class Tech extends Employee{ long salaryHours;double getPay(){return salaryHours*100; }Tech(String name,long salaryHours){super(name);no=id;this.salaryHours=salaryHours;}public String toString(){return"name:"+name+" no:"+no+" pay:"+getPay();}};class EmployApp{public static void main(String args[]){Vector s=new Vector();Employee em;double numPay=0;s.addElement(new Sale("aa",111000));s.addElement(new Sale("bb",122000));s.addElement(new Tech("cc",35));s.addElement(new Tech("dd",30));s.addElement(new Manager("ee"));Enumeration e=s.elements();while(e.hasMoreElements()){em=(Employee)e.nextElement();numPay=numPay+em.getPay();System.out.println(em);}System.out.println("总工资:"+numPay);}};心得:此次试验更多更广的运用了类的继承这一特性,使得程序更简单易读,同时运用到了抽象类与接口的使用方法,总体而言是上一次实验的引申,进一步加深了知识的运用,学习了更多的方法以及构造方法的运用方式。