前言
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
如果说Python是面向对象的坟墓,那么Java就是类的终结地狱。
Java创始人
你发现没Java之父和Python之父他们的区别没,哈哈哈哈!
很明显的说明Java确实要Python更容易秃头,所以要学好Java的童鞋要做好心理准备哟。哈哈哈哈,其实哪有那么严重,谁说程序员就一定会秃头的,这个好像和你的基因有点关联的,开个玩笑,只要大家平时多做运动,不要一个灵感一来,就坐在电脑面前敲一整天的代码,改一整天的bug。要学会放松,适当的思考和创新!
Java发展史
20世纪90年代,硬件领域出现了单片式计算机系统,这种价格低廉的系统一出现就立即引起了自动控制领域人员的注意,因为使用它可以大幅度提升消费类电子产品(如电视机顶盒、面包烤箱、移动电话等)的智能化程度。
Sun公司为了抢占市场先机,在1991年成立了一个称为Green的项目小组,帕特里克、詹姆斯·高斯林、麦克·舍林丹和其他几个工程师一起组成的工作小组在加利福尼亚州门洛帕克市沙丘路的一个小工作室里面研究开发新技术,专攻计算机在家电产品上的嵌入式应用。
由于C++所具有的优势,该项目组的研究人员首先考虑采用C++来编写程序。但对于硬件资源极其匮乏的单片式系统来说,C++程序过于复杂和庞大。另外由于消费电子产品所采用的嵌入式处理器芯片的种类繁杂,如何让编写的程序跨平台运行也是个难题。为了解决困难,他们首先着眼于语言的开发,假设了一种结构简单、符合嵌入式应用需要的硬件平台体系结构并为其制定了相应的规范,其中就定义了这种硬件平台的二进制机器码指令系统(即后来成为“字节码”的指令系统),以待语言开发成功后,能有半导体芯片生产商开发和生产这种硬件平台。
对于新语言的设计,Sun公司研发人员并没有开发一种全新的语言,而是根据嵌入式软件的要求,对C++进行了改造,去除了留在C++的一些不太实用及影响安全的成分,并结合嵌入式系统的实时性要求,开发了一种称为Oak的面向对象语言。
对于Java的发展我想每一门编程语言都是如此,从解决问题到改善问题,最后不断的一次又一次的升级
Java特点
只说了,好像是有点难,学了Python的人再去看Java有点不想认识它,学了Java的人再去学Python,越学越开心,哈哈哈这样来说这块骨头还是有点硬,我们需要慢慢的去学
回归正题 以下特点
1.简单性
是不是在开玩笑,怎么还是简单的语言了,哈哈哈。有一句话叫做“比上不足比下有余嘛”,它确实比Python要难理解,但是对于编程语言的原始大佬C++来说,它的语法还是先对简单。
例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。
2.面向对象
Java是一个面向对象的语言。对程序员来说,这意味着要注意应中的数据和操纵数据的方法(method),而不是严格地用过程来思考。在一个面向对象的系统中,类(class)是数据和操作数据的方法的集合。这个已经是它的基础了,所以我们才说如果先了解Java再去学Python绝对直呼简单,因为Python的难点就在于类的使用,而Java的基础就是从类开始叠加的。
3.分布性
4.编译和解释性
5.稳健性
6.安全性
7.可移植性
8.高性能
9.多线程性
10.动态性
这些特点我就不一一介绍了,如果有需要的可以去点击这里
Java可以做什么
1、大数据领域
2、Android应用
如果你想知道Java应用在哪里,打开你的安卓手机或者任何的App,它们完全是用有着谷歌Android API的Java编程语言编写的,这个API和JDK非常相似。前几年安卓刚开始起步而到今日已经很多Java程序员是安卓App的开发者。顺便一提,虽然我们之前的文章提到的关于安卓App是如何工作的,即安卓使用了不同的Java虚拟机和不同的封装,但是代码仍然是用Java编写的。
3、网站领域
Java同样也在电子商务和网站开发上有着广泛的运用。你可以运用很多RESTfull架构,这些架构是用Spring MVC,Struts 2.0和类似的框架开发出来的。甚至简单的Servlet,JSP和Struts在各种政府项目也是备受欢迎,许多政府,医疗,保险,教育,国防和其他部门的网站都是建立在java之上的。
4、软件工具
许多常用的软件和开发工具都是运用Java来编写和开发的。比如Eclipse,IneteliJIdea和Netbans IDE。 交易系统第三方交易系统,现已是金融服务产业的一个很大的部分,它们同样也是Java编写。 例如受欢迎的交易平台Murex,它也是Java编写,并与许多的银行前台所连接,提供服务。
其实还有很多,我这里就不一一介绍了!
学好Java的几点建议
第一不要去和Python语言去作比较,因为你发现他们有共同之处,也有不同之处,需要做的是学习他们的类似之处,不要去吐槽Java的难点,因为他的发展史确实要悠久一些,自然沉淀的精华也就多一些。
第二不要盲目的去敲代码,因为Java的语法有一些复杂,不同于Python的简单,多敲必然会很好,但是以为的沉迷于敲也不是有一个正确的学习方法,总的来说,学习Java还是要多理解,多学习基础,只有把基础学好了,才会有很多的创新实践。