为什么都说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 条评论
登录 后参与评论

相关文章

来自专栏武军超python专栏

2018年8月26日python常识和各大语言发展史

今天遇到的新单词: precision  n精确度 generator n发电机,生产者,生成器

1274
来自专栏养码场

限时领取| 6GJavaScript高级视频,高级前端工程师必备武器!

之前场主分享了13G的JavaScript基础视频,共140集实战教学。没想到领取人数竟超过了5000+,着实让场主感受到了JavaScript教程的需求,及还...

902
来自专栏佳爷的后花媛

Java编程思想之每天两小时(一)

之前也学过Java,但是因为很少用,所以一直没有当回事,现在想想,那时真是太年轻啊。后来朋友推荐这本Java编程思想给我,刚拿到这本书,被这厚厚的一本惊呆了,里...

1142
来自专栏技术博客

设计模式原则(单一、开放封闭、里氏代换、依赖倒转、迪米特法则五大原则)

        如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力,当变化发生时,设计会遭受到意想不...

1182
来自专栏Cloud Native - 产品级敏捷

从面向对象到函数式编程: 我们正在构建更成熟的关注点隔离生态系统

2016.11.17, 深圳, Ken Fang 在谈论关注点隔离生态系统前, 我想,首先需要谈谈 Procedure Programming, Functio...

20010
来自专栏恰童鞋骚年

[转] Agile Software Development 敏捷软件开发

  敏捷开发是一种软件开发方法,基于迭代和增量开发,通过自组织,跨团队,沟通协作完成开发工作。

1182
来自专栏程序人生

[技术] 谈谈Python

昨天的文章收获了不少有价值的回复。不少人发现了一个大bug,那就是「上帝的归上帝,撒旦的归撒旦」。囧死我了。脑手不同步这病怎么治啊~以后我写完文章争取好好复查一...

4245
来自专栏领域驱动设计DDD实战进阶

关于领域对象业务逻辑中条件判断的最佳实践

这篇文章其实是大健康行业直销系统的番外篇,主要给大家讲讲如何在领域逻辑中,有效的处理业务逻辑条件判断的最佳实践问题。 大家都知道,聚合根、实体和值对象这些领域对...

3125
来自专栏企鹅号快讯

月薪数万的攻城狮带你了解到什么是C语言编程思想,原来这就是编程思想

什么是编程思想?答案可能很会复杂,但也可以很简单; 一句话来讲就是,用计算机来解决人们实际问题的思维方式,即编程思想; 编程就是为了解决实际中的问题,在思考如何...

2599
来自专栏码农分享

工厂模式(Factory)

简单工厂和工厂方法这俩个设计模式不做详细介绍,请各位看官自行百度,有大量的解释。再次我简单引用一下其他博客主对这三种模式的理解。

811

扫码关注云+社区

领取腾讯云代金券