南京邮电大学java实验报告面向对象
面向对象实践报告(2篇)

第1篇一、引言面向对象编程(Object-Oriented Programming,OOP)是一种以对象为基础的编程范式,它将现实世界中的实体抽象为对象,并通过封装、继承和多态等机制实现代码的重用和扩展。
随着计算机技术的发展,面向对象编程已经成为当今主流的编程范式之一。
为了提高自身的编程能力,我选择进行一次面向对象实践,以下是我对这次实践的总结报告。
二、实践背景随着互联网的快速发展,各种应用程序层出不穷。
为了提高软件开发效率和质量,面向对象编程应运而生。
我国在软件行业的发展也取得了显著成果,但与国外相比,仍存在一定差距。
为了提高我国软件行业的竞争力,我决定通过实践来深入了解面向对象编程,并将其应用于实际项目中。
三、实践内容1. 学习面向对象编程的基本概念(1)对象:对象是面向对象编程的核心概念,它是现实世界中实体的抽象。
对象具有属性和方法,属性表示对象的状态,方法表示对象的行为。
(2)类:类是对象的模板,它定义了对象的属性和方法。
通过创建类的实例,可以得到具有相同属性和方法的多个对象。
(3)封装:封装是指将对象的属性和方法封装在一起,对外只暴露必要的接口。
这样可以保护对象的内部实现,提高代码的可维护性。
(4)继承:继承是面向对象编程中的一种机制,它允许一个类继承另一个类的属性和方法。
通过继承,可以避免代码重复,提高代码的复用性。
(5)多态:多态是指同一操作作用于不同的对象时,可以有不同的解释和表现。
多态可以提高代码的灵活性和可扩展性。
2. 选择编程语言和开发环境为了实践面向对象编程,我选择了Java语言作为编程语言,因为Java具有丰富的面向对象特性,且在企业级应用中广泛应用。
开发环境选择IntelliJ IDEA,它是一款功能强大的集成开发环境,支持Java语言的开发。
3. 实践项目我选择了一个简单的图书管理系统作为实践项目。
该系统主要包括以下功能:(1)图书信息管理:包括添加、删除、修改和查询图书信息。
实验一Java面向对象基础实验报告参考模板

实验一Java面向对象基础、数组实验报告一、实验目的1. 理解面向对象编程基本思想2. 了解类的封装方法,以及如何创建类和对象3. 掌握面向对象程序设计的方法,了解类的继承性和多态性的作用4. 掌握Java 中的数组定义、引用二、实验要求编写程序时要注意体现面向对象思想,体会不同访问控制符的作用。
1. 编写一个Vehicle类和它的二个子类Bus类和Boat类。
(要求:程序要有构造方法重载;要能体现类的多态性)2. 定义一个由若干个整数组成的数组,要求输出该数组的平均值以及所有的奇数之和。
3. 随机生成30个0-9之间的数字,分别统计0-9这10个数字分别出现了多少次。
三、实验内容及结果1. 编写一个Vehicle类和它的二个子类Bus类和Boat类。
public class Vehicle {private String color;public Vehicle() {this("black");}public Vehicle(String color) {this.color = color;}public String toString() {return "this is a " + this.color + " vehicle";}}class Bus extends Vehicle {private int passagerNumber;public Bus() {this(50, "black");}public Bus(int number) {this(number, "black");}public Bus(int number, String color) {super(color);this.passagerNumber = number;}public String toString() {return super.toString().replace("vehicle", "bus")+ " , max passager number: " + this.passagerNumber;}}class Boat extends Vehicle {private String owner;public Boat() {super("black");this.owner = "nobody";}public Boat(String owner) {super("black");this.owner = owner;}public Boat(String owner, String color) {super(color);this.owner = owner;}public String toString() {return super.toString().replace("vehicle", "boat")+ " own by "+ this.owner;}}2. 定义一个由若干个整数组成的数组,要求输出该数组的平均值以及所有的奇数之和。
Java实验报告二[面向对象特性继承、封装、多态]
![Java实验报告二[面向对象特性继承、封装、多态]](https://img.taocdn.com/s3/m/be2fcbd69ec3d5bbfd0a743f.png)
J a v a面向对象编程实验报告题目:继承、封装、多态专业:计算机科学与技术班级:学号: 2姓名:2014年 5 月 4 日一、实验目的与要求1、掌握面向对象编程中的封装特性3、掌握面向对象编程中的继承特性4、掌握面向对象编程中的多态特性实验内容根据如下类图创建每个类并进行以上内容的相关测试三、实施步骤1):在Eclipse中创建一个抽象的MobilePhone父类,用abstract关键字修饰这个类,并且写入构造方法,类名如:MobilePhone_FatherClass2):再给MobilePhone父类编写入一些抽象的属性和方法,并实现get(),set()方法(获取属性的方法)3)再创建四个子类继承MobilePhone父类,实现Student父类的方法,并且分别写入这些子类的自己的方法:NOKIA1:message();NOKIA2:netpay();MOTOROLA1:message();MOTOROLA2:metpay();4)再创建一个测试类:MobilePhoneTest ,实例化NOKIA1,NOKIA2,MOTOROLA1,MOTOROLA2四个子类,实现多态的输出!四、实验结果整个工程的类结构如下:①:MobilePhone父类:MobilePhone_FatherClass②:四个子类:NOKIA1,NOKIA2,MOTOROLA1,MOTOROLA2:(方法类似,只展示一个):③:测试类:MobilePhoneTest④:实验结果:五、出现的问题及解决的方法问题:抽象类的分析,多态的实现解决方法:关键字abstract,需要继承父类使用extends关键字,不使用abstract修饰的类也是可以作为父类的!通过这次实验,我懂得了封装和继承是实现多态的前提,使自己更深的理解的封装,继承,多态的重要性。
java实验报告实验二 面向对象编程(1)

信息工程学院Java程序设计实习报告实验二面向对象编程(1)1.实验目的掌握Java程序面向对象编程的基本架构,会运用面向对象的思想编写Java程序。
2.实验内容实验题1 阅读如下程序,完成思考题。
class CCircle{ double pi;double radius;double getRadius(){ return radius;}void setCircle(double r, double p){ pi=p;radius=r;}}public class Ex2_1{ public static void main(String args[]){ CCircle cir1=new CCircle();cir1.setCircle(2.0,3.1416);System.out.println("radius="+cir1.getRadius());}}[基本要求] 运行程序并观察运行结果。
[思考问题] 试述程序中主要语句的作用。
CCircle cir1=new CCircle(); //新建一个CCircle对象cir1.setCircle(2.0,3.1416); //初始化对象System.out.println("radius="+cir1.getRadius()); //输出对象的属性实验题2设计一个用来描述汽车的类,使用类的非静态成员变量来表示汽车的车主姓名、当前的速率和当前方向盘的转向角度,使用类的非静态成员方法来表示改变汽车的速率和停车两个操作。
主要代码如下:package package2_2;class Car {private String user;private int speed;private int angle;public Car(String name,int speed,int angle){user=name;this.speed=speed;this.angle=angle;}public void changeSpeed(int speed2){speed=speed2;}public void carStop(){speed=0;angle=0;System.out.println("车辆处于停车状态");}public void display(){System.out.println("车主姓名: "+user);System.out.println("当前车速: "+speed);System.out.println("方向盘角度:"+angle);}实验题3 定义一个类MyProgram,包含两个属性:一个是private的整型属性data、一个是private的String类型的属性str,封装这两个属性的四个方法setData()和getData()、setStr( )和getStr();将这两个属性转变为字符串的方法是toStr()。
南京邮电大学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.实验目的(1)掌握类与对象基本知识;(2)java中的承继机制及纸盒(package)、USB(interface)等的设计方法;(3)掌控static、this、super等关键字的采用;(4)掌控java中两种比较器的用法。
2.实验内容实验题1定义一个类book,涵盖两个属性:一个就是private的string类型的属性title、一个就是private的float类型的属性listprice,PCB这两个属性的四个方法settitle()和gettitle()、setlistprice()和gelistprice()。
基本要求:(1)设计类book及类bookmanagement,在类bookmanagement中输入book类的对象的两个private属性;(2)重写父类的tostring()方法,实现book类实例的两个属性的输出。
实验结果:实验过程:首先建立一个books工程,再建立俩个类book和bookmanagement。
在book类中,有俩个属性:一个是private的string类型的属性title、一个是private的float类型的属性listprice,使用getter和setter第1页共13页生成四个方法settitle()和gettitle()、setlistprice()和gelistprice()。
最后重写tostring函数。
在bookmanagement中有主函数,采用joptionpane.showmessagedialog(null,book)函数并使之用对话框形式输出代码如下:packagebook;publicclassbook{}@overridepublicstringtostring(){}return\+gettitle()+\+getlistprice();publicvoidsetlistprice(floatlistprice){} this.listprice=listprice;publicfloatgetlistprice(){}returnlistprice;publicvoidsettitle(stringtitle){}this.title=title;publicstringgettitle(){}returntitle;publicbook(stringtitle,floatlistprice){}super();this.title=title;this.listprice=listprice;privatestringtitle;privatefloatlistprice;packagebook;第2页共13页importjavax.swing.joptionpane;publicclassbookmanagement{}/*publicstaticvoidoutput1(bookbook){system.out.println(\恳请输入book的title:\system.out.println(\请输出book的listprice:\}publicstaticvoidoutput2(bookbook){*/publicstaticvoidmain(string[]args){}bookbook=newbook(\,89.9f);joptionpane.showmessagedialog(null,book);//output1(b ook);//output2(book);}system.out.println(book.tostring());实验题2存有两个类:mobilemanagement和mobile,分别叙述例如图3.4右图两部手机名称及价格,类mobilemanagement在纸盒.nwsuaf.jp.p3中,而mobile在纸盒.nwsuaf.jp.p3.data中。
面向对象技术实训报告

一、摘要本次面向对象技术实训以Java编程语言为基础,通过实例分析和实践操作,让学生深入了解面向对象编程的基本概念、原则和方法。
实训过程中,学生掌握了面向对象编程的基本语法、类和对象的设计与实现、继承与多态等核心概念,并通过实际项目开发提高了编程能力。
本文将从实训内容、方法与收获三个方面进行总结。
二、实训内容1. 面向对象基本概念(1)面向对象编程(OOP)的基本概念:封装、继承、多态。
(2)Java编程语言中的面向对象编程特性:类、对象、构造方法、访问控制符等。
2. 类和对象的设计与实现(1)设计一个简单的Java程序,实现学生信息管理系统。
(2)设计并实现学生类、教师类、课程类等实体类,以及相关的方法。
3. 继承与多态(1)使用继承实现学生类和教师类的继承关系。
(2)通过多态实现不同类对同一方法的重写和重载。
4. 实际项目开发(1)设计并实现一个图书管理系统,包括图书类、读者类、借阅类等。
(2)实现图书的借阅、归还、查询等功能。
三、实训方法1. 理论学习:通过阅读教材、参考书籍,了解面向对象编程的基本概念和原理。
2. 实践操作:根据实训内容,动手编写Java程序,实现面向对象编程。
3. 交流与讨论:在实训过程中,与其他同学进行交流与讨论,共同解决遇到的问题。
4. 查阅资料:针对遇到的具体问题,查阅相关资料,提高编程能力。
四、实训收获1. 理论知识:掌握了面向对象编程的基本概念、原则和方法,为后续课程和实际项目开发奠定了基础。
2. 编程能力:通过实际项目开发,提高了编程能力,学会了如何将理论知识应用到实际项目中。
3. 团队协作:在实训过程中,与其他同学进行交流与讨论,提高了团队协作能力。
4. 问题解决能力:在遇到问题时,能够主动查阅资料、请教他人,提高了问题解决能力。
五、总结本次面向对象技术实训使我受益匪浅,不仅加深了对面向对象编程的理解,还提高了编程能力。
在今后的学习和工作中,我会继续努力,将所学知识运用到实际项目中,为我国信息技术领域的发展贡献自己的力量。
南京邮电大学java实验报告面向对象

实验报告班级:姓名:学号:课程名称Java程序设计实验项目Java的面向对象编程实验项目类型验证演示综合设计指导教师吴伟敏成绩√一、实验目的1、掌握Java程序面向对象编程的基本架构;2、掌握有关面向对象的基本概念,如:类、对象、接口继承和多态等;3、掌握包程序设计的方法,了解大型软件的构造方式二、实验步骤1、录入并测试以下程序,说出此程序的作用,体会类和对象的关系。
程序如下:class CCircle{double pi;double radius;double getRadius(){return radius;}void setCircle(double r, double p){pi=p;radius=r;}}public class Ex2_1{public static void main(String args[]) {CCircle cir1=new CCircle();cir1.setCircle(2.0,3.1416);System.out.println("radius="+cir1.getRadius());}}[基本要求]运行程序并观察运行结果。
[思考问题]试述程序中每条语句的作用。
2、录入并测试和完善以下程序,体会接口的用法。
interface Sittable{void sit();}interface Lie{void sleep();}interface HealthCare{void massage();}class Chair implements Sittable{public void sit(){System.out.println("It is sittable!");};}class Sofa extends Chair implements Lie,HealthCare{ public void sleep(){System.out.println("It is sleep!");};public void massage(){System.out.println("give a message!");};public static void main(String[] args) {Sofa cottonSofa=new Sofa();System.out.println(" Sofa is ok!");}}[基本要求]运行程序并观察运行结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告班级:姓名:学号:
课程名称Java程序设计实验项目Java的面向对象编程
实验项目类型验
证
演
示
综
合
设
计
指导教师吴伟敏成绩√
一、实验目的
1、掌握Java程序面向对象编程的基本架构;
2、掌握有关面向对象的基本概念,如:类、对象、接口继承和多态等;
3、掌握包程序设计的方法,了解大型软件的构造方式
二、实验步骤
1、录入并测试以下程序,说出此程序的作用,体会类和对象的关系。
程序如下:
class CCircle
{
double pi;
double radius;
double getRadius(){
return radius;
}
void setCircle(double r, double p){
pi=p;
radius=r;
}
}
public class Ex2_1
{
public static void main(String args[]) {
CCircle cir1=new CCircle();
cir1.setCircle(2.0,3.1416);
System.out.println("radius="+cir1.getRadius());
}
}
[基本要求]
运行程序并观察运行结果。
[思考问题]
试述程序中每条语句的作用。
2、录入并测试和完善以下程序,体会接口的用法。
interface Sittable{
void sit();
}
interface Lie{
void sleep();
}
interface HealthCare{
void massage();
}
class Chair implements Sittable{
public void sit(){
System.out.println("It is sittable!");
};
}
class Sofa extends Chair implements Lie,HealthCare{ public void sleep(){
System.out.println("It is sleep!");
};
public void massage(){
System.out.println("give a message!");
};
public static void main(String[] args) {
Sofa cottonSofa=new Sofa();
System.out.println(" Sofa is ok!");
}
}
[基本要求]
运行程序并观察运行结果。
[思考问题]
试述程序中每条语句的作用。
三、实验过程原始记录(数据、图表、计算等)
四、实验结果及分析
Java的面向对象编程,重点在于体现了过程的封装性,即对象是封装了属性和方法的,这样做实现了模块化和信息隐藏,有利于程序的可移植性和安全性,也利于对复杂对象的管理。
签名。