从一个猜单词的小程序开始---征服OOP的思惟方式01

记得刚开始学Java的时候看到MOOC上有个老师写了一个猜数字的游戏,出于兴趣,小风就写了一个猜单词的小游戏来描述html

OOP编程的思惟方式。PS:OOP(Object Oriented Programing,面向对象程序设计)能够理解为计算机编程的一种架构。编程

好了,不BB了。开始了!小程序

首先咱们按照常规的面向过程的思惟方式来分析这个程序。仅仅定义Demo一个类,该类中存放全部的逻辑代码数组

因为便于理解,程序先成员的位置上定义两个字符串数组english和chinese。即一个用来存储英文单词,一个用来存储单词对应的中文意思。架构

注意顺序保持一致。dom

接着,经过Math类中的random方法获取一个范围在0到english长度之间的随机数i,而后将i做为索引,打印出english[i];并返回chinese[i].函数

将此部分代码封装成show方法。以下所示:优化

接下来须要实现用户经过键盘来输入一个字符串,在Java中的util包下有一个Scanner类,该类是JDK5.0以后新增的特性,用来实现用户从键盘输入信息。设计

这里咱们便须要用到Scanner类。所以也要在程序的开头带入该类。一样这部分代码咱们也将之封装成方法。htm

有了用户的输入,下一步天然就是将用户的输入和show方法返回的值进行比较了,这里有个代码优化的小技巧,本身慢慢体会。

好了,基本的过程彷佛已经完成了!不过为了程序的体验,这里我将用户猜单词的结果显示单独封装成一个 方法

缘由是:你想一想,考试的时候你每作一道题就可以知道你的答案对不对么?因此我这里将用户猜的结果单独封装成一个方法,当须要作一个题就知道答案正不正确的状况下

调用就能够了。当要模拟考试的状况时,直接根据judge方法返回的布尔值记录分数便可,不调用该方法。

好了,程序到这里就基本已经完成了。剩下的就剩下咱们的程序的入口main方法了。英语词性缩写在main里面建立Demo类的对象d。而后经过d去按顺序调用逻辑方法便可

代码以下:

嗯!程序已经完成了。下面就能够试试运行的结果了,下图是我运行的结果:

嗯,还行,程序可以正常的跑起。不过我想了想,以为彷佛有哪里不对啊。通常的开发中,main方法里含有大量的逻辑代码貌似并不理智吖。因而下面来尽行改进!

将主函数中大量的逻辑代码进行抽取,单独封装到一个成员方法中,接着直接在main方法中调用该方法便可。

看,这样main方法中就只有一行代码!这样是否是很完美!

好了,以上就是以面向过程的思惟方式编写的整个猜单词的小程序,快去试试吧!

 

PS:因为用的Java原本就是一种OOP语言,上述代码的逻辑中其实也带有一丝OOP的思想
 

下一篇文章我将用面向对象的思惟方式来用代码描述这个小程序。

相关文章
相关标签/搜索