CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛
CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛
CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛

教练,我想学Java!一.Java的编程思想-永久免费的源码丞旭猿

如无特殊说明 本文章全文均采用CC-BY-NC 4.0 中国大陆协议授权许可

本文希望用一种新手的和生动活泼的角度,从零开始带领那些希望零基础入门Java开发的小白们成功踏入Java Coding的道路

当然,本文作者也只是一个普通的业余Java Coder,文章中必会有所纰漏,如有此类情况发生也请大佬们不吝赐教。

因为只是个试水作,因此第一章的篇幅将会非常非常短,仅仅展示了一个本人作文的风格,希望各路大佬或是希望前来学习的小白能够给出各类指导意见,谢谢!

那么以下是第一章的正文:


Hey,你好啊,当你点开这个文章的时候,我相信你一定是满怀着一颗激动的心情,希望能够在这个自己从未涉足但又希望有所建树的领域中大显身手!但是,我相信你也一定会知道,这将是一条漫长而又遥远的路途,前方有着各种未知的谜团,等待着你去探索……

但是等等,教练,我还有问题……

为什么选择从Java入门?

我们当然知道,这个世界上存在着各种不同的计算机编程语言,但是为什么要从Java开始?

因为作者只会Java(逃

但其实顺着这个问题深究下去,我们能够发现选择Java入门是有其一定合理性的:

  • Java的语法学习难度是适中的

Java的语法十分容易学习,因为他中规中矩,不像Kotlin那样甜到掉牙,也不像Python那样过于简陋,这正合适一个初学者的学习。

  • Java采用了现代编程语言中广泛使用的「面向对象」程序设计

什么是「面向对象」?是指对着女朋友编程吗?

很显然不是,所谓「对象(Object)」大概可以被比喻为一种容器,里头放入了各种我们希望干的事情。与之相对的是「面相过程」。现在我们可能无法理解此两者中任意一者的意义和二者之间的区别,但是相信我,在接下来的学习中,你会对这些概念的内容越来越清晰的。

  • Java是跨平台的

很显然,对于计算机操作系统,存在着Windows,Mac OS,Linux等多个完全搭不着边的操作系统,作为一个初学者,我们不可能闲着为不同的操作系统学习同一种问题的不同解决方案。Java为我们很好的解决了这个难题。借助「Java虚拟机」,我们可以在不同的操作系统中,用同一套代码实现完全相同的事!这看起来很瓶常,但实际上却是一个伟大的工程!

好吧,那么我们从何开始?

也许你会认为我会像其他教程一样,一开始就要求你下载各种你根本听不懂的专业术语组成的各种软件。但并不是这样,请看以下一个问题:

假设你要正在设计一个高铁售票系统,你需要完成以下的逻辑: 当用户购买车票时,你需要先检测这趟车次是否存在,然后再检测这趟车次是否有余票,如果有的话那么卖票给用户,然后在后台日志中记录下这件事情

看起来是再正常不过的流程,但是换做你你要怎么设计呢?你可能会写道:

如果 用户希望购买车票的车次 存在:
  且 如果 用户希望购买车票的车次 有余票:
    卖票给用户
    记录到后台
    通知用户购买成功

当然,以上只是伪代码,是为了说明流程,并不是真正的代码

确实是这样,但是如果高铁售票开辟了超售通道,不希望检测余票,你又要怎么写呢?你可能又会写道:

如果 用户希望购买车票的车次 存在:
  卖票给用户
  记录到后台
  通知用户购买成功

看起来也没啥问题,但是如果又有新的需求呢?那么每次增加一个新的需求,你都需要不断重复卖票的那三步:「卖票,记录,通知」

有没有办法把这部分聚合到一起,需要的时候用一个简单的方式调用?

当然有,你完全可以这么写:

卖票:
  卖票给用户
  记录到后台
  通知用户购买成功

这样的话上面那两部分可以分别改写为:

如果 用户希望购买车票的车次 存在:
  且 如果 用户希望购买车票的车次 有余票:
    卖票

如果 用户希望购买车票的车次 存在:
  卖票

Hey,简单了很多不是吗?

你可能没有发现,这一个简单示例过去后,你已经发现了一个惊人的东西——在Java中,我们称这种东西为「方法(Method)」,这个名字可能有点难以理解,因此你需要知道在其他编程语言中,这种东西被称作「函数(Function)」

Hey,他确实和数学函数一样,就像f(x)=2x+1,我们没必要每一次需要给x乘二加一的时候都写一遍2x+1,我们只需要拿f(x)来表示这后面的一段内容就行了。

函数,或者说方法,就是这样的东西。

在上例中,我们定义了的那个卖票的方法用Java代码写差不多是这样:

/*** 卖票方法**/publicvoidsellTicket(){//卖票给用户sellToUser();//记录到后台logToConsole();//通知用户购买成功askForSuccess();}

至此,你已经向成为 Java Coder这条道路踏出了坚实的一步!但是别着急,我们还没有发现Java的精髓:

众所周知,一张高铁票根上应该包含着列车名称,列车车次,发车时间等各种信息,我们应该如何表示他们呢?

如果你没有想法,那么为何不尝试把他们收集到一个盒子里,然后把整个盒子扔给用户让他们自己拆开看里头有什么信息呢?

如果你觉得这么做很合适,那么恭喜你,这个盒子就是我刚才所说的「对象(Object)」,所谓「面向对象」,就是指我们通过创建一个一个这样的盒子,并通过操作这些盒子来进行编程。

一个表示一张车票的Java盒子应该是如下的样子:

/*** 车票对象**/publicclassTicket{Stringname;Stringid;DatestartTime;}

其实想一想,这似乎不是很难容易理解,那么也许下一次,我们可以了解到更多真正有关于这个语言的内容……

(本章完)

声明:本文部分素材转载自互联网,如有侵权立即删除 。

© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
相关推荐
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容