信息科学与工程学院
2021-2022学年第一学期

实 验 报 告
课程名称: Java编程技术
实验名称: 编写简单的控制台程序
专 业 班 级: 物 联 网
学 生 学 号: 20190012
学 生 姓 名: 朱凯
实 验 时 间: 2021年9月 15日
实验报告
【实验目的】
1. 掌握设置程序运行环境的方法;
2. 掌握编写与运行程序的方法;
3. 理解面向对象的编程思想。
【实验要求】
1. 编写一个简单的控制台程序,该程序在命令行输出两行文字:“Hello World!”和“We are students.”.
2. 试验后回答相关问题:
1) 编译器怎样提示丢失大括号的错误?
2) 编译器怎样提示语句丢失分号的错误?
3) 编译器怎样提示将System写成system这一错误?
【实验具体内容】
(1)实验流程图:
(虚线表示可不建立包,直接在类中编写)
(2)实验源代码(粘贴源代码):
实验源代码如下:
(3)实验代码、过程、相应结果(截图)并对实验进行说明和分析:
实验过程及相应的结果:
首先如上面流程图所示使用Eclipse软件新建一个类并编写上述实验代码,运行结果如下:
用命令行方式,将自己写的文件编译成.class文件,并执行命令显示结果,如下图所示:
命令行执行结果:
、
回答下列问题:
(1)编译器怎样提示丢失大括号的错误?
(2)编译器怎样提示语句丢失分号的错误?
(3)编译器怎样提示将System写成system这一错误?
【概念理解与体会】
1、 什么是面向对象?什么是面向过程?
简单的说,面向对象需要的是小明和小红,小明是属性,小红是方法。面向对象是把构成问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;
2、 通过下面的五子棋游戏设计来进一步理解面向对象编程的思想和面向过程编程思想的不同之处。试通过其他的例子解释并理解面向对象和面向过程的差异。
面向过程的设计思路就是首先分析问题的步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8、返回步骤2,9、输出最后结果。把上面每个步骤用不同的方法来实现。即按照过程编写代码。
面向对象的设计则是从另外的思路来解决问题。整个五子棋可以分为1、黑白双方,这两方的行为是一模一样的,2、棋盘系统,负责绘制画面,3、规则系统,负责判定诸如犯规、输赢等。第一类对象(玩家对象)负责接受用户输入,并告知第二类对象(棋盘对象)棋子布局的变化,棋盘对象接收到了棋子的变化就要负责在屏幕上面显示出这种变化,同时利用第三类对象(规则系统)来对棋局进行判定。
其他例子如做菜,面向过程需要分析过程步骤:开火、放调味料、放菜、翻炒等等,而面向对象则是需要分析时间的属性和方法,如厨师、调味料、锅炉等等。
3、 简单说说面向对象的基本概念和面向对象程序设计的特点和优点
基本概念:把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。对同类对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。
特点:小明和小红(属性与方法),还有封装、继承、多态等。
优点:CSDN中对它的优点有如下描述:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护。
【实验心得】
Java中的“蛋糕理论”,即所有类和其中的属性和方法都是分层级执行的。这和C语言有所不同。在java中可能看似先执行了后面的程序,但其实这是符合运行规则的,级别高的优先运行,即课上讲到的“蛋糕理论”。