为什么都说java比较容易入门?

说java比较容易入门的人,应该都是正常的人,因为相比之下,java有着不可比拟的优势,对于编程新手来说这个优势,可以让他们更快的用java语言写出他们自己的东西,而且bug不多,并且不容易出现致命的问题;

那么java到底有什么优势呢?说到优势,我们就需要再看看与之相对比的语言看看他的优势到底是什么?

先来说说当下的主流开发语言:

C,C++,JAVA

那么以上这三种都是高级语言了,但是相比之下c是一个高级语言中的低级语言,他就好像183的身高站在了NBA的队员里,单拿出来是挺高但是在这里面就是低的了;

先来看看,C语言的特性吧:

1.有方法,没有类的概念;

2.具有强数据类型的概念;

3.具有强正负号的概念;

4.具有强大小写的概念;

5.指针与内存管理的概念;

6.编译型语言;

那么这个就是一入门就必须要会的东西,因为不会这些东西这个语言不算入门;不会这些东西也不能开发出东西来,还有什么多线程等概念这些不属与入门级别的;也就是说这个语言只是一些基础的语言,没有提供特别多的库方法共开发者使用;

下面在来看看C++的特性:

1.有方法,有类的概念(有类就有多态,继承与封装);

2.具有强数据类型的概念;

3.具有强正负号的概念;

4.具有强大小写的概念;

5.指针与内存管理的概念;

6.编译型语言;

那么c++入门也需要会上面东西,当然他能做的东西开发速度就会比c强一些,因为有类的概念所以,而且提供的类库也比c强很多,所以他相对c来说更像一个正常的人开发出来的东西,但是小编认为c++要比c难一些因为,他相对与c来说需要学的东西只增不减;

最后再来看看java的特性:

1.有方法,有类的概念(有类就有多态,继承与封装);

2.具有强数据类型的概念;

3.具有强正负号的概念;

4.具有强大小写的概念;

5没有指针与内存管理;

6.多了虚拟机的概念;

7.编译型语言;

那么java看看他的优势相对与c或c++是什么呢?一对比就看出来了,没有指针的概念;多了一个虚拟机的概念;那么也就是这两个概念让java彻底的把门槛降低了,为什么?首先来说说指针。

指针的概念:指针是指向计算机内存中的地址的名字,他操作的是内存,学习编程的人都知道指针的难学程度不亚于 高中物理的三场混合应用题;让人头疼不已,而且要命的是用不好很容易出现内存泄漏,野指针,让程序出现各种各样的问题;不要说新手一些工作了几年的人对指针的问题想想头就疼;那么在java中没有了取而代之的是虚拟机,什么事都由虚拟机来做,内存的分配与管理都是他的活;而且有了虚拟机,可以让你的程序之编译一次就可以在不同平台运行,不像前两个需要换平台就要重新编译,对编译器也有一定的要求,而且编译的时候出现的问题也是很郁闷的;

所以正常的说来,Java就是比c与c++要入门一些,而且可以做的事情也很多,但是针无两头利,java也有弊端,就是他的速度运行速度相对c++与c就差一些了,与硬件的要求就相对高一些;总之呀越容易上手的语言运行速度就相对要慢,因为他们都是万变不离其中,到最后寄存器中都是00101010101010,这个东西,像java给人用的是java 中间就要经过 c++,c,汇编,最后到01001010101,所以他的速度要慢;还有更容易上手的语言js他简单到,没有数据类型的概念,没有编译的概念, 写就是说写完就可以直接运行;当然速度也是不快;

好了说了这么多,相信我已经跟朋友解释明白了为什么java好入门的原因了,至于朋友们要学什么语言还是要根据自己的爱好,有的人就是喜欢玩指针觉得很帅,自己写的代码别人看不懂,多酷当然也不是不可,条条大路通罗马,各位看官自己把握吧;

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-09-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据文摘

5大架构:细数数据平台的组成与扩展

2048
来自专栏华章科技

Bruce Eckel:我最喜欢Python,Kotlin或将取代Java(附演讲全文+PPT)

这两天,Bruce Eckel来到中国,这是他的中国首秀。5月22日,Bruce Eckel发表了他的最新演讲,与在场的1000多人分享关于编程语言的一些思考,...

934
来自专栏一个会写诗的程序员的博客

第1章 Kotlin是什么第1章 Kotlin是什么

当下互联网大数据云计算时代,数以百万计的应用程序在服务器、移动手机端上运行,其中的开发语言有很大一部分是用流行软件界20多年的、强大稳定的主力的编程语言Java...

722
来自专栏Java架构沉思录

数据库分库分表如何避免“过度设计”和“过早优化”

关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到1000W或100G以后,由于查询维度较多,即使添加从库、优化索引...

512
来自专栏点滴积累

geotrellis使用(四十二)将 Shp 文件转为 GeoJson

原因很多,最重要的原因是我转行了。是的,我离开了开发岗位,走向了开发的天敌-产品经理。虽然名义上是产品经理,但是干的事情也很杂,除了不写代码,其他的都干,经常还...

822
来自专栏PHP技术

精读《async/await 是把双刃剑》

终于,async/await 也被吐槽了。Aditya Agarwal 认为 async/await 语法让我们陷入了新的麻烦之中。

1232
来自专栏后端技术探索

节约内存:Instagram的Redis实践

可以说是网拍App的始祖级应用,也是当前最火热的拍照App之一,而在Instagram里,我们需要知道每一张照片的作者是谁,下面就是Instagram团队如何使...

471
来自专栏Java架构沉思录

关系型数据库 VS NoSQL,谁才是王者

SQL(结构化的查询语言)数据库是过去四十年间存储数据的主要方式。20世纪90年代末随着Web应用和MySQL、PostgreSQL和SQLite等开源数据库的...

1062
来自专栏一个会写诗的程序员的博客

[zz]Kotlin 和 Checked ExceptionKotlin 和 Checked Exception

最近 JetBrains 的 Kotlin 语言忽然成了热门话题。国内小编们传言说,Kotlin 取代了 Java,成为了 Android 的“钦定语言”,很多...

612
来自专栏前端工程

浅谈前端/软件工程师的代码素养

“程序是写给人读的,只是偶尔让计算机执行一下。”

1806

扫描关注云+社区