南邮_JAVA实验1
南昌大学JavaWeb实验报告(1)

实验一 Java Web开发环境配置 学生姓名: 学 号: 专业班级: 实验类型:□ 验证 □ 综合 □ 设计 □ 创新 实验日期: 2018.04.11 实验成绩:
一、实验目的 1. 掌握设置JDK环境。 2. 掌握设置Tomcat环境。 3. 安装、掌握Eclipse,MyEclipse 或IntellijIDEA软件,为学习 JSP和进行 JSP的实验做好准备工作。 4. 编写JSP 程序并运行JSP页面。
二、实验要求 1. 安装并设置 Java SDK 软件包。 2. 安装并设置Tomcat软件包。 3. 安装并设置 Eclipse软件、MyEclipse或IntellijIDEA软件。 4. 编写一个简单的JSP,并在浏览器中浏览。 5. 创建一个Web项目,并进行部署运行。
三、 实验步骤 (一) JDK安装与配置 (二) Tomcat安装与配置 (三) IDE(Eclipse、MyEclipse、或IntelliJ IDEA)的安装与配置 (四) 在IDE中建立一个jsp (五) 部署JSP工程文件 (六) 启动Tomcat服务器 (七) 浏览JSP
四、 实验数据 (一)JDK安装与配置 首先去oracle官方网站下载jdk的压缩包,根据自己的系统类型选择合适的版本即可.我的系统是Linux,于是选择Linux x64版本的下载即可. 下载后,将压缩包解压,下面是我解压的路径,以及压缩包中的内容 然后就是进行环境变量的配置,将jdk关键组件添加到环境变量.我使用的是zsh,在/home/.zshrc配置文件中添加下面三行即可:
验证是否安装成功: (二)Tomcat安装与配置 首先去apache的官网下载适合自己系统的tomcat版本,进行解压即可.
在bin目录下有一些可执行脚本,运行startup.sh,就可以成功开启tomcat服务器. 这时候,在自己的浏览器中输入http://localhost:8080进行访问,出现下面的网页说明安装成功.
Java及Javaweb(jsp)实验1

Java及Javaweb(jsp)实验1第一篇:Java及Javaweb(jsp)实验1实验1:Java类与对象一、实验目的(1)掌握Java类的继承关系和派生方法。
(2)理解多态的概念与使用。
(3)掌握接口的定义和使用。
二、实验任务(1)按要求编写一个Java程序。
(2)按要求完善一个Java程序,编译、运行这个程序,并写出运行结果。
三、实验内容1.编写一个Java程序片断,以定义一个表示学生的类Student。
这个类的属性有“学号”、“班号”、“姓名”、“性别”、“年龄”,方法有“获得学号”、“获得班号”、“获得性别”、“获得姓名”、“获得年龄”、“获得年龄”。
2.为类Student增加一个方法public String toString(),该方法把Student类的对象的所有属性信息组合成一个字符串以便输出显示。
编写一个Java Application程序,创建Student类的对象,并验证新增加的功能。
四、调试过程五、运行结果六、心得体会实验代码: package ;public class SuperClass {} int x;SuperClass(){x=3;} voiddoSomething(){ System.out.println(“in SuperClass.doSomething()”);System.out.println(“in SuperClass : x=” +x);} package ;public class SubClass extends SuperClass { int x;SubClass(){}super();//调用父类的构造方法} voiddoSomething(){super.doSomething();//调用父类的方法 x=5;//super()要放在方法中的第一句System.out.println(“inSubClass :x=”+x);System.out.println(“in SubClass.doSomething()”);System.out.println(“super.x=”+sup er.x+“ sub.x=”+x);} pa ckage ;class Student{longstudentID;intclassID;String name;String sex;int age;public Student(long studentID,intclassID,Stringname,Stringsex,int age){this.studentID=studentID;this.classID=classID;=name;this.sex=sex;this.age=age;}public long getStudentID(){returnstudentID;} publicintgetClassID(){ returnclassID;} public String getName(){return name;}public String getSex(){ return sex;}publicintgetAge(){ return age;}public String toString(){return “学号:”+getStudentID()+“n班号:”+getClassID()+“n姓名:”+getName()+“n性别:”+getSex()+“n年龄:”+getAge();} }package ;public class StudentDemo1 {public static void main(String args[]){Undergraduate st1 = new Undergraduate(“张三”,50,70,60);st1.Display();Graduate st2=new Graduate(“李四”,70,80,90);st2.Display();}} package ;public class Inheritance {} public static void main(String args[]){SubClasssubC=new SubClass();subC.doSomething();}第二篇:javawebhtml软件的结构:C/S(Client Server)结构的软件:cs结构的软件的缺点:更新的时候需要用户下载更新包然后再安装,程序员则比如: QQ、极品飞车、飞信、迅雷需要开发客户端与服务端。
精品文档java 实验

实验1 包的使用与访问控制实验目的:(1)理解java包的组织结构;(2)学会编写带有包结构的程序;(3)掌握包结构下的成员访问控制实验任务:编写3个类,类名分别是Clock 、A、B,其中类Clock和类A放在同一个包packone中,而类B则放在另一个包packtwo中,包packone和包packtwo放在同一个目录下。
类Clock 中还有3个整型数据hour、minute、second,它们分别是public、private、protected,类Clock 还包含一些方法使用这些数据。
类A和类B的功能相似,都是使用类Clock并调用类Clock 中的方法。
请按下面的方法完成实验,并回答问题。
(1)新建Java Project,命名为Shiyan7_1,在src目录下新建Package,命名为packone,并在packone包下新建Class,命名为Clock,Clock.java.程序代码如下://Clock.javapackage packone;public class Clock{public int hour;private int minute;protected int second;public Clock(int i,int j,int k){setAll(i,j,k);}void setAll(int i,int j,int k){hour=i;minute=j;second=k;}public int getHour(){return hour;}public int getMinute(){return minute;}public int getSecond(){return second;}}(2)在packone包下新建Class,命名为A。
A.java代码如下://A.javapackage packone;class A{public static void main(String[] args){Clock c=new Clock(5,20,10);System.out.println("从类A中访问Clock hour="+c.getHour());System.out.println("从类A中访问Clock minute="+c.getMinute());System.out.println("从类A中访问Clock second="+c.getSecond());}}(3)现在在src目录下新建Package,命名为packtwo,然后在该包下新建Class,命名为B,B.java代码如下://B.javapackage packtwo;import packone.*;class B{public static void main(String[] args){Clock c=new Clock(8,30,5);System.out.println("从类B中访问Clock hour="+c.getHour());System.out.println("从类B中访问Clock minute="+c.getMinute()); System.out.println("从类B中访问Clock second="+c.getSecond());}}所建的程序目录情况如下:分别运行A.java和B.java程序,结果如下:思考题:(1)现在将Clock类中的构造函数public Clock(int i,int j,int k)改成Clock(int i,int j,int k)运行A.java和B.java查看结果。
南邮软件课程设计Java软件设计

南邮软件课程设计Java软件设计一、教学目标本课程的教学目标是使学生掌握Java软件设计的基本原理和方法,能够运用Java语言进行软件开发。
具体来说,知识目标包括掌握Java语言的基本语法、面向对象编程思想、常用类库和API等;技能目标包括能够使用Java语言编写简单的应用程序、掌握常用的软件设计模式和软件测试方法;情感态度价值观目标包括培养学生的团队合作意识、创新精神和对软件工程的敬业精神。
二、教学内容根据课程目标,教学内容主要包括Java语言基础知识、面向对象编程、软件设计模式、软件测试方法和软件工程实践等。
具体安排如下:1.Java语言基础知识:包括Java语法、数据类型、控制结构、异常处理等。
2.面向对象编程:包括类与对象、继承与多态、封装与抽象等。
3.软件设计模式:包括创建型模式、结构型模式和行为型模式等。
4.软件测试方法:包括单元测试、集成测试和系统测试等。
5.软件工程实践:包括软件需求分析、软件设计、编码、测试和维护等。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法和实验法等。
具体使用哪种教学方法,将根据教学内容和学生的实际情况进行灵活选择。
四、教学资源本课程将使用教材《Java软件设计》作为主要教学资源,同时辅以参考书籍、多媒体资料和实验设备等。
教材内容将结合实例进行讲解,以便学生更好地理解和掌握Java软件设计的方法和技巧。
参考书籍和多媒体资料将提供更多的背景知识和扩展内容,以丰富学生的学习体验。
实验设备将用于实践教学,使学生能够亲自动手编写代码和进行软件测试,提高其实际操作能力。
五、教学评估本课程的评估方式包括平时表现、作业、考试等。
平时表现主要评估学生的出勤、课堂参与度和团队合作表现等,旨在培养学生的职业素养和团队协作能力。
作业主要评估学生的编程能力和理论知识掌握程度,通过布置不同难度的编程题目,让学生在实践中巩固所学知识。
Java实验指导一

实验1实验1 Java程序设计基础(1)实验目的认识J2SE开发环境,对TextPad、JCreator、NetBeans、Eclipse等开发工具有初步的了解,能够利用以上的一种开发工具编写调试简单的Java Application和Applet程序,了解Java程序的编辑、编译和运行过程。
熟练掌握Java程序开发步骤;熟悉Java程序结构;掌握Java文件命名规则及调试方法;实验环境操作系统:windows 2000 或Window XP集成开发环境:JDK1.6及以上版本实验学时2学时,必做实验。
实验内容(1)配置Java环境(2)编写包含多个类的Java源文件并调试运行(3)熟悉Java程序结构(4)按要求编写相关算法程序实验步骤(1)配置Java环境,熟悉开发调试步骤及方法;(2)编写简单的包含多个类的Java源程序,实现代码的编写、编译、调试及结果显示的过程,代码如下:public class Hello{//Java程序的入口方法,程序将从这里开始执行public static void main(String[] args){System.out.println("Hello Java!");}}class A{//类A}class B{//类B}(3)完成实验指导书P23页基础题(1)要求程序的编写与调试,给出运行结果(请参考实验指导书P9页例1-4,或者以下程序)参考程序(素数判断)class Example2{public static void main(String[] args){int sum=0,i,j;for(i=1;i<=10;i++){if(i%2==0)continue;sum=sum+i;}System.out.println("sum="+sum);for(j=2;j<=50;j++){for(i=2;i<=j/2;i++){if(j%i==0)break;}if(i>j/2)System.out.println(""+j+"是素数");}}}(4)编写一个Java Application程序,给出运行结果,综合比较并了解字符界面下实现输入输出的几种方式,进一步了解、熟悉Java程序结构、注释方法(请参考实验指导书P10页提高题1-5)分析与思考(1)环境变量、系统变量配置的作用?(2)包含多个类的Java源程序命名规则?(3)Java程序的注释方法?(4)Java中数组类型、定义及使用(5)Java语句、各种控制语句定义及使用第2题(1)环境变量指定一个软件路径,控制着多种程序的行为,包含关于系统及当前登入用户的环境信息的字符串,一些软件程序使用此信息确定在何处放置文件。
南邮数据结构实验一

南邮数据结构实验一实验报告(2014 / 2015学年第一学期)课程名称数据结构实验名称二叉树基本操作以及哈夫曼编码译码系统实验时间年月日指导单位指导教师学生姓名班级学号学院(系) 专业二叉树的基本运算:一、问题描述1.设计递归算法,实现二叉树的运算:删除一棵二叉树,求一棵二叉树的高度,求一棵二叉树中叶子节点数,复制一棵二叉树,交换一棵二叉树的左右子树2.设计算法,自上而下,自左向右即按层次遍历一棵二叉树3.设计main函数,测试上述每个运算二、系统分析和概要设计首先用maketree构造一棵二叉树,然后遍历二叉树,然后交换每个结点的左右子树,接着算出输得高度和叶子节点,最后删除。
三、详细设计2. 核心算法建立二叉树的void MakeTree(const T& x,BinaryTree& left,BinaryTree& right)和计算叶子节点的int Size();3. 算法分析删除一棵二叉树,求一棵二叉树的高度,求一棵二叉树中叶子节点数,复制一棵二叉树等都是用递归的方法实现。
四、程序代码流程图#includetemplatestruct BTNode{BTNode(){lChild=rChild=NULL;}BTNode(const T &x){element=x;lChild=rChild=NULL;}BTNode(const T &x,BTNode* l,BTNode* r) {element=x;lChild=l;rChild=r;}T element;BTNode* lChild,* rChild;};templateclass BinaryTree{public:BinaryTree(){root=NULL;}~BinaryTree(){Clear();}void Copy(BinaryTree&r) const;bool IsEmpty()const{return root == NULL;}void Clear();void Exchange();bool Root(T& x)const;int GetHeight();void MakeTree(const T& x,BinaryTree& left,BinaryTree& right);void BreakTree(T& x,BinaryTree& left,BinaryTree& right);void PreOrder(void (*Visit)(T &x));void LevelOrder(void (*Visit)(T& x));int Size();BinaryTree(BinaryTree&t)root=Copy(t.root);}// void InOrder(void (*Visit)(T &x));// void PostOrder(void (*Visit)(T &x));BTNode* Copy(BTNode* t);protected:BTNode * root;private:static int number;void Clear(BTNode* &t);void Exchange(BTNode* t);int GetHeight(BTNode* t);int Size(BTNode* t);void PreOrder(void (*Visit)(T &x),BTNode* t);void LevelOrder(void (*Visit)(T& x),BTNode* t); // void InOrder(void (*Visit)(T &x),BTNode* t);// void PostOrder(void (*Visit)(T &x),BTNode* t); };templatebool BinaryTree::Root(T &x)const{if(root){x=root->element;return true;}elsereturn false;}templatevoid BinaryTree::Clear(){Clear(root);}templatevoid BinaryTree::Clear(BTNode* &t){if(t)Clear(t->lChild);Clear(t->rChild);delete t;t=NULL;}}templatevoid BinaryTree::MakeTree(const T& x,BinaryTree& left,BinaryTree& right) {if(root||&left==&right)return;root=new BTNode (x,left.root,right.root);left.root=right.root=NULL;}templatevoid BinaryTree::BreakTree(T& x,BinaryTree& left,BinaryTree& right) {if(!root||&left==&right||left.root||right.root)return;x=root->element;left.root=root->lChild;right.root=root->rChild;delete root;root=NULL;}templateBTNode* BinaryTree::Copy(BTNode* t){if(!t)return NULL;BTNode*q=new BTNode(t->element);q->lChild=Copy(t->lChild);q->rChild=Copy(t->rChild);return q;}templatevoid Visit(T &x){cout<<x<<" ";<="" bdsfid="252" p=""></x<<">}templatevoid BinaryTree::PreOrder(void (*Visit)(T& x)){PreOrder(Visit,root);}templatevoid BinaryTree::PreOrder(void (*Visit)(T& x),BTNode* t) { if(t){Visit(t->element);PreOrder(Visit,t->lChild);PreOrder(Visit,t->rChild);}}templatevoid BinaryTree::Exchange(){Exchange(root);}templatevoid BinaryTree::Exchange(BTNode* t){if(!t)return;BTNode* temp;temp=t->lChild;t->lChild=t->rChild;t->rChild=temp;Exchange(t->lChild);Exchange(t->rChild);}templateint BinaryTree::GetHeight(){return GetHeight(root);}int BinaryTree::GetHeight(BTNode* t) {int templ;int tempr;if(!t)return 0;templ=GetHeight(t->lChild);tempr=GetHeight(t->rChild);if(templ++>tempr++)return templ;elsereturn tempr;}templateint BinaryTree::number=0; templateint BinaryTree::Size(){Size(root);return number;}templateint BinaryTree::Size(BTNode* t){if(t!=NULL){Size(t->lChild);if(t->lChild ==NULL&&t->rChild ==NULL)number++;Size(t->rChild);}return number;}templatevoid BinaryTree::LevelOrder(void (*Visit)(T& x)) { PreOrder(Visit,root);}void BinaryTree::LevelOrder(void (*Visit)(T& x),BTNode* t) { BTNode *quene[50],*p;int pre=1,rear=1;quene[++pre]=t;while(pre!=0){p=quene[++rear];cout<element<<" ";if(p->lChild !=NULL)quene[++pre]=p->rChild ;if(p->rChild !=NULL)quene[++pre]=p->lChild ;}}void main(){BinaryTree a,b,x,y,z;y.MakeTree('E',a,b);z.MakeTree('F',a,b);x.MakeTree('C',y,z);y.MakeTree('D',a,b);z.MakeTree('B',y,x);cout<<"二叉树z的先序遍历:"<<endl;< bdsfid="378" p=""></endl;<>z.PreOrder(Visit);cout<<endl;< bdsfid="381" p=""></endl;<>cout<<"层次遍历二叉树:";z.LevelOrder(Visit);cout<<endl;< bdsfid="385" p=""></endl;<>BinaryTree q(z);cout<<"复制的二叉树q的先序遍历:"<<endl;< bdsfid="389" p=""></endl;<>q.PreOrder(Visit);cout<<endl;< bdsfid="392" p=""></endl;<>cout<<"树的高度:";cout<<z.getheight()<<endl;< bdsfid="395" p=""></z.getheight()<<endl;<>cout<<"叶子节点数量:";cout<<z.size()<<endl;< bdsfid="398" p=""></z.size()<<endl;<>z.Exchange();cout<<"二叉树左右子树交换后的先序遍历:"<<endl;< bdsfid="401" p=""></endl;<>z.PreOrder(Visit);cout<<endl;< bdsfid="404" p=""></endl;<>}五、测试用例和运行结果测试用例如main函数中所示,结果如下图所示。
《Java语言程序设计》上机实验指导手册(1)
《Java语言程序设计》上机实验指导手册(1)
实验一 Java语言概述
【目的】
①安装并配置Java运行开发环境;
②掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;
【内容】
1.一个简单的应用程序
✧实验要求:
编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。
程序模板:
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello,the World!!");
System.out.println("这是我编写的第一个Java程序!");
}
}
✧实验后的练习:
1.编译器怎样提示丢失大括号的错误?
2.编译器怎样提示语句丢失分号的错误?
3.编译器怎样提示将System写成system这一错误?
4.编译器怎样提示将String写成string这一错误?
【结果】
将本次上机实验结果按照实验要求内容依次进行,填写实验目标、过程、结果。
【注意事项】
①实验报告要求每人提交一份,内容写全,包括姓名、学号、实验内容或题目、实验目
的与要求、实验步骤与源程序、测试数据与实验结果和总结等。
②绝不允许抄袭。
【思考题】。
JAVA实验指导
JAVA实验指导实验一Java初级编程(2学时)1、实验目的(2)掌握设置Java程序运行环境的方法。
(3)掌握编写与运行Java程序的方法。
(4)了解Java语言的概貌。
(5)安装、掌握NetBean软件,为学习Java语言和进行Java程序的实验做好准备工作。
(6)Java语言的基本编程方法,了解基本的语法、语句和数据类型。
2、基本要求:(1)注意自始至终贯彻课程中所介绍程序设计风格,养成良好的编程习惯。
(2)独立完成所布置习题。
(3)为保证尽量在统一安排的上机时间内编译运行通过程序,应事先设计好程序。
(4)认真完成每次实验,并写出实验报告。
3、实验内容和步骤:(2)设置环境变量,包括设置Java的运行路径和clapath。
(4)使用if...ele语句构造多分支,判断某一年是否为闰年。
闰年的条件是符合下面二者之一:能被4整除,但不能被100整除;能被4整除,又能被100整除。
publicclaE某1_1{}publictaticvoidmain(Stringarg[]){}intyear=2005;Sytem.out.println(year+\年是闰年\Sytem.out.println(year+\年不是闰年\ele(5)后从键盘输入数字1/2/3后,可显示抽奖得到的奖品;如果输入其它数字或字符显示“没有奖品给你!”。
importjava.io.某;claE某1_2{publictaticvoidmain(Stringarg[])throwIOE某ception{charch;Sytem.out.println(\按1/2/3数字键可得大奖!\Sytem.out.println(\按空格键后回车可退出循环操作.\while((ch=(char)Sytem.in.read())!=''){Sytem.in.kip(2);//跳过回车键witch(ch){}}}cae'1':}Sytem.out.println(\恭喜你得大奖,一辆汽车!\break;Sytem.out.println(\不错呀,你得到一台笔记本电脑!\break;Sytem.out.println(\没有白来,你得到一台冰箱!\break;Sytem.out.println(\真不幸,你没有奖品!下次再来吧。
Java实验(一).ppt
drawRect(int,int,int,int);
• 画空心矩形,参数含义(x,y,width,height)
fillRect(int,int,int,int);
• 画实心矩形,参数含义(x,y,width,height)
2019/3/28
其它参考帮助文档
南开大学软件学院
12
Applet特性及创建
2019/3/28
南开大学软件学院
8
Applet的编写
必须采用下面的格式
• import java.applet.*; • public class HelloWorld extends Applet {
Applet类继承
2019/3/28
南开大学软件学院
9
主要的Applet方法
init()
二.熟悉JDK,建立Applet
Java类文件HelloWorld.java
import java.applet.*; import java.awt.*; /** * The HelloWorld class implements an applet that *simply displays "Hello World!". */ public class HelloWorld extends Applet { public void paint(Graphics g) { // Display "Hello World!" g.drawString("Hello world!", 50, 25); } }
1. 2.
2019/3/28
南开大学软件学院
南京邮电大学Java实验报告三
南京邮电大学Java实验报告三实验报告(2015/2016学年第一学期)课程名称JA V A语言程序设计实验名称流处理程序设计实验时间2015 年12 月25 日指导单位计算机学院软件工程系指导教师邓玉龙学生姓名李健琅班级学号B14070427 学院(系) 物联网专业网络工程实验报告实验名称流处理程序设计指导教师邓玉龙实验类型设计实验学时 2 实验时间2015-12-25 一、实验目的和任务要求学生能在学习和理解课堂学习内容中JA V A流编程理论的基础上,学习并逐步掌握JA V A流程序的编写和调试,学习根据处理需求对不同流的正确选择使用和组合使用方法。
二、实验环境(实验设备)PC微型计算机系统,Microsoft Windows操作系统,,SUN Java Development Kit开发工具包,NetBeans开发工具。
三、实验原理及内容(包括操作过程、结果分析等)实验内容:设计和编写一个程序从键盘读入一行字符串,将其写入一个文本文件中,再编写另一个程序从文本文件中读入字符串并在命令行窗口显示出来。
实验源程序:(1)写入文本程序:import java.io.*;import java.util.Scanner;public class Write {public static void main(String args[]) {File f=new File("test.txt"); //创建文本文件对象FileWriter fw; //字符输出流对象Scanner in = new Scanner(System.in); //准备从键盘输入字符串System.out.print("请输入文本字符:"); //键盘输入提示String s = in.nextLine(); //从键盘输入文本字符串try{fw=new FileWriter(f); //创建字符输出流对象fw.write(s + "\n"); //写字符串到文件fw.close(); //关闭字符输出流System.out.println("写文本文件完毕");}catch (IOException e) {System.out.println("写文件错误!");}}}(2)读取文本程序:import java.io.*;import java.util.Scanner;public class Read {public static void main(String args[]){File f;FileReader fr; //字符/输入流对象BufferedReader br; //字符输入缓冲流Scanner in =new Scanner(System.in); //准备从键盘输入字符串System.out.print("请输入要读入的文件名:"); //键盘输入提示String s=in.nextLine(); //从键盘输入文件名try{f =new File(s); //创建文件对象fr =new FileReader(f); //创建字符输入流对象br =new BufferedReader(fr); //字符输入流接入到输入缓冲流String str; //变量s存放读入的文本行System.out.println("读出的文本文件为:");while(true){str=br.readLine(); //从文本文件读入一行if(str == null) break; //读入结束System.out.println(str); //输出显示读入的文本}fr.close();br.close();}catch (IOException e) {System.out.println("您所要读写的文件不存在!");//显示错误信息}}}实验结果:四、实验小结(包括问题和解决方法、心得体会等)通过本次实验,让我学会了用Java语言进行文本文件的读写,并且加强了自己对Java语言的运用编程能力,真正理解了关于流处理的一些知识内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实 验 报 告
( 2015 / 2016学年 第2学期)
课程名称 JAVA语言程序设计
实验名称 实验3:子类与继承
实验时间 2016 年 5 月 31 日
指导单位 计算机学院软件工程系
指导教师 杨健
学生姓名 李翔 班级学号
B15041419
学院(系) 计软院 专 业 软件工程NIIT
实验名称 实验3:子类与继承 指导教师 成杨健
实验类型 验证&设计 实验学时 2 实验时间 2015-6-14
一、实验目的
(1) 掌握多态性的实现
(2) 掌握抽象类和抽象方法的定义和使用
(3) 掌握接口的定义和使用
二、实验环境(实验设备)
Intellij IDEA
三、实验内容
实验说明:定义一个类 Rectangle 代表矩形,在该类中定义成员变:Length 和
Width;方法:getLength()、getWidth()、setLength()、setWidth()、getAera()和toString()。
为Rectangle类派生出一个子类 Box 代表立方体,定义成员变:Height,定义方法:
getHeight()、setHeight()、getVolume()和toString()
代码:
2
运行结果:
实验说明:P117 页(1)人员类(Person)的多态性设计,要求分别用接口、抽象类的 方式设计
程序实现多态性。即第一种方案将 Person 定义成抽象类,然后 通过定义该类的子类来实现。第二
种方案将 Person 定义成接口,然后定 义实现该接口的类。
代码:
接口实现:
抽象类实现:
测试代码:
运行结果:
四、实验小结(包括问题和解决方法、心得体会等)
实验内容简单。无。
五、指导教师评语
成 绩 批阅人 日 期