JAVA和C++哪个更有前途?

2020-12-18 09:51发布

20条回答
722
2楼 · 2020-12-18 10:07

当然是java呀,java这个语言现在是世界第一语言

我想吃肉
3楼 · 2020-12-18 10:47
哈哈,怎么这么多人喜欢问这个问题? 这种问题应该不是问题。而是爱好咯。Java属于高级,C++支持C的向后兼容可以认为相对底层。你可以这么认为。JAVA就是站在C、C++、汇编等巨人的肩膀上发展而来的。C++永远是主流。但不是商业的(不能说不是,只是成本大,和JAVA相比,能用JAVA就会用JAVA)。Java现在是主流但是是商业的。而且局限性太大(JAVA)。要说发展嘛。肯定C++甚至C。因为这两者永远不可能落伍。JAVA嘛有他自己的前景。那就是做应用层的开发。这个回答够了么?再附送给你点。找工作方面的和学习方面的。找工作这种事就是废话。学得精不怕没工作。所以只是爱好问题。学习方面的话,哈哈。C++如果说能让你脱层皮。那JAVA就是晒日光浴。享受着哪。要是不采纳最佳。我检举你!打了这么多!


aijingda
4楼 · 2020-12-18 11:03

C++在未来一段时间内仍然会是游戏、桌面应用开发等许多领域的一支主力。

Java偏重于快速开发。随着性能的不断提升,在很多领域也和C++形成了竞争。

选择哪个主要看题主打算主要从事哪个方面。如果你做Linux驱动,研究一堆Java,帮助就不如C大。

如果没有明确的目标的,推荐首选Java。(其实也想推荐Python,但是题主没有问这个。)理由是:

1、相比于C或C++的沉重的历史包袱,Java语言的设计更合理,需要兼容的早期版本和习惯少一些。整体上语言更简单明了。易于读写。

2、Java有jre。可以做到一次编译处处运行。所以用Java写的程序比较好移植,复用性高一些。

3、同样因为Java有jre,很多硬件层的细节被屏蔽。一般来说底层细节暴露越多的语言越让程序员无法把精力集中到当前的主要目标上——除非你就在做底层开发。

4、用户量大,用Java写的程序多,应用广泛。基本上目前的四大语言C,C++,Java,Python体量都很大。所以这个优点是针对其他小语言说的。

5、不论是Android应用、PC应用还是服务器应用。Java主要应用的这些领域都是“显学”。你写一个东西能做什么,可以很快向不懂计算机的人解释清楚。所以更容易有市场,从而更容易来钱。并不是说其他语言拉不到市场,也不是说其他领域不重要。只是你用C做操作系统开发或者用Python做统计算法的话。小公司做不起这种项目,大公司又已经人才济济。


张成秀 - 快乐开心每一天
5楼 · 2020-12-18 11:16

现在从市场上来看的话,应该是JAVA,他的市场需求量还是比较大的,就业面也是各行各业。

C语言一方面比较接近底层,可以通过学习C掌握很多系统的底层知识,同时由于它的语法简单,上手也比较快,加上C语言上并没有类似Java,C#那样很多的类库,让初学者看起来比较透明,比较干净,更能从语言的角度去理解。同时掌握好了C语言,反过来无论是学习Java还是C#都是很容易的,无非只是一个表达语言的转换。

Java语言是基于Java虚拟机的,它最大的优势在于一次编译,到处运行,它并不需要考虑各种系统之上的不同系统调用,所有的系统调用都可以通过底层的JVM的封装来完成,开发者在开发过程中不用考虑操作系统层面的编程知识,比如在windows上开发的一个Java应用程序,在Linux系统上也是可以运行的,只需要给他对应的Java虚拟机就好了,同时Java的优势还在于它的开源和封装,Java提供了强大的类库支持,包括多线程,数据结构,socket编程等,让开发者可以把更多关注放在程序的编写基础之上,而不是放在实现一些底层的应用程序。同时Java还提供了垃圾回收机制,在C++等一些需要维护内存的语言中,如何分配和释放内存是一个很让程序员头痛的问题,特别是在有服务的框架上,往往微小的程序泄漏将会带来巨大的问题,Java的垃圾回收机制很好帮助程序员解决这个问题。同时目前Java有比较良好的一些应用框架,可以用来快速搭建网络应用,例如对于企业级的开发,J2EE就是一个很好的选择。

C++的特质在于它的高效性,它是直接和底层打交道的语言,在网游之中,大部分都是采用c++来开发,因为游戏要求要有较高的运行效率和良好的用户体验,这点Java程序支持的并不好,而且往往在要求很高的某些算法部分还会采用C和汇编等更底层的语言来开发。C++的特性还在于它的面向对象的封装,这点和Java是类似的,但是它有兼有了C语言快速高效的特性,所以在开发类似网游,搜索等项目的时候,通常采用C++,C++和C一样,它们在跨平台项目的开发中会遇到一些问题,主要来自各个操作系统的支持和底层api调用的差异。

JAVA和C++都是面向对象语言。也就是说,它们都能够实现面向对象思想(封装,继乘,多态)。而由于c++为了照顾大量的C语言使用者,而兼容了C,使得自身仅仅成为了带类的C语言,多多少少影响了其面向对象的彻底性!JAVA则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了c++的固有缺陷。 Java和c++的相似之处多于不同之处,但两种语言问几处主要的不同使得Java更容易学习,并且编程环境更为简单。


Kindery
7楼 · 2020-12-18 14:21

C语言一方面比较接近底层,可以通过学习C掌握很多系统的底层知识,同时由于它的语法简单,上手也比较快,加上C语言上并没有类似Java,C那样很多的类库,让初学者看起来比较透明,比较干净,更能从语言的角度去理解。同时掌握好了C语言,反过来无论是学习Java还是C都是很容易的,无非只是一个表达语言的转换。

一颗悲伤的小树苗
8楼 · 2020-12-18 14:45

其实最近几年真的是Java更实用一点,而且真的工作了你发现,用Java这个语言做开发类的,还是很受欢迎的,可能在大学的时候C++用到的比较多,但是工作了就不是了

小狮子
9楼 · 2020-12-18 14:52

这两种语言都是特别主流的,学会一种语言,另一种也是特别好学的,编程语言都是换汤不换药的,希望可以帮助到你

相关问题推荐

  • 回答 2

    Statement的execute(String query)方法用来执行任意的SQL查询,如果查询的结果是一个ResultSet,这个方法就返回true。如果结果不是ResultSet,比如insert或者update查询,它就会返回false。我们可以通过它的getResultSet方法来获取ResultSet,或者通过getUpda...

  • 回答 22

    忙的时候项目期肯定要加班 但是每天加班应该还不至于

  • 回答 108
    已采纳

    虽然Java人才越来越多,但是人才缺口也是很大的,我国对JAVA工程师的需求是所有软件工程师当中需求大的,达到全部需求量的60%-70%,所以Java市场在短时间内不可能饱和。其次,Java市场不断变化,人才需求也会不断增加。马云说过,未来的制造业要的不是石油,...

  • 回答 5
    已采纳

    工信部证书含金量较高。工信部是国务院的下属结构,具有发放资质、证书的资格。其所发放的证书具有较强的权威性,在全国范围内收到认可,含金量通常都比较高。 工信部证书,其含义也就是工信部颁发并承认的某项技能证书,是具有法律效力的,并且是国家认可的...

  • 回答 70
    已采纳

    学Java好不好找工作?看学完Java后能做些什么吧。一、大数据技术Hadoop以及其他大数据处理技术都是用Java或者其他,例如Apache的基于Java 的 HBase和Accumulo以及ElasticSearchas。但是Java在此领域并未占太大空间,但只要Hadoop和ElasticSearchas能够成长壮...

  • 回答 16
    已采纳

    就是java的基础知识啊,比如Java 集合框架;Java 多线程;线程的五种状态;Java 虚拟机;MySQL (InnoDB);Spring 相关;计算机网络;MQ 消息队列诸如此类

  • 回答 12

    #{}和${}这两个语法是为了动态传递参数而存在的,是Mybatis实现动态SQL的基础,总体上他们的作用是一致的(为了动态传参),但是在编译过程、是否自动加单引号、安全性、使用场景等方面有很多不同,下面详细比较两者间的区别:1.#{} 是 占位符 :动态解析 ...

  • 回答 62

    没问题的,专科学历也能学习Java开发的,主要看自己感不感兴趣,只要认真学,市面上的培训机构不少都是零基础课程,能跟得上,或是自己先找些资料学习一下。

  • 回答 4

    1、反射对单例模式的破坏采用反射的方式另辟蹊径实例了该类,导致程序中会存在不止一个实例。解决方案其思想就是采用一个全局变量,来标记是否已经实例化过了,如果已经实例化过了,第 二次实例化的时候,抛出异常2、clone()对单例模式的破坏当需要实现单例的...

  • 回答 5

     优点: 一、实例控制  单例模式会阻止其他对象实例化其自己的单例对象的副本,从而确保所有对象都访问唯一实例。 二、灵活性  因为类控制了实例化过程,所以类可以灵活更改实例化过程。 缺点: 一、开销  虽然数量很少,但如果每次对象请求引用时都要...

  • 回答 4

    这个主要是看你数组的长度是多少, 比如之前写过的一个程序有个数组存的是各个客户端的ip地址:string clientIp[4]={XXX, xxx, xxx, xxx};这个时候如果想把hash值对应到上面四个地址的话,就应该对4取余,这个时候p就应该为4...

  • 回答 6

     哈希表的大小 · 关键字的分布情况 · 记录的查找频率 1.直接寻址法:取关键字或关键字的某个线性函数值为散列地址。即H(key)=key或H(key) = a·key + b,其中a和b为常数(这种散列函数叫做自身函数)。...

  • 回答 6

    哈希表的大小取决于一组质数,原因是在hash函数中,你要用这些质数来做模运算(%)。而分析发现,如果不是用质数来做模运算的话,很多生活中的数据分布,会集中在某些点上。所以这里最后采用了质数做模的除数。 因为用质数做了模的除数,自然存储空间的大小也用质数了...

  • 回答 2

    是啊,哈希函数的设计至关重要,好的哈希函数会尽可能地保证计算简单和散列地址分布均匀,但是,我们需要清楚的是,数组是一块连续的固定长度的内存空间

  • 回答 3

     解码查表优化算法,seo优化

  • 回答 5

    1.对对象元素中的关键字(对象中的特有数据),进行哈希算法的运算,并得出一个具体的算法值,这个值 称为哈希值。2.哈希值就是这个元素的位置。3.如果哈希值出现冲突,再次判断这个关键字对应的对象是否相同。如果对象相同,就不存储,因为元素重复。如果对象不同,就...

没有解决我的问题,去提问