如果选择C++,那C++ 的难度与JAVA 比,那应该不在一个层次。因为 C++ 作者及委员会想给你带来足够的抽象能力,让你可以抽象这个世界;给你足够的自由与控制硬件的能力,及零开销的高性能。
简单点说,C++程序员如同神一般的存在,控制着代码宇宙的一切,但如果是一个新手神,很可能一个delete或者一个野指针就让代码宇宙崩溃退出了。
而JAVA能操作的都是已经设计好的数据结构,更别提还有JVM这个超级大管家控制着一切,在JAVA代码宇宙,JVM才是那个神,而程序员?只是一个操作员。
接下来说下C++和Java的区别JAVA是纯面向对象语言,所有变量和方法都在类中声明和定义/C++为了向前兼容c语言则保存部分面向过程特性。
C++是编译型强类型语言,由编译器直接编译成本地机器识别的机器语言/JAVA是半编译半解释型语言,由编译器得到class字节码文件,然后由虚拟机解释执行,由JIT即时编译器进行热点代码探测直接翻译成机器码。
JAVA没有指针,虽然虚拟机底层实现还是依赖指针,但不对外开放,更加安全/C++ 存在各种指针*、常量指针、指向指针的指针,还有与指针对应的取址&,c++指针使用不当可能存在野指针,指向一个已删除的对象或者有访问权限限制的内存区域。
两者相比还是Java更好入门!C++入门难,精通更难!
C++是正宗的C语言体系,是由C语言发展而来的,所以它支持多种编程范式,它主要有两个特点,一个是尽量兼容C,另一个就是支持面向对象的方法。C++对C系统进行了有效的进化,比C更加安全,还能检查出更多的类型错误!
Java是一个纯粹的面向对象的程序设计语言,继承了C++语言面向对象技术的核心。取其精华去其糟粕,舍弃了C语言中容易引起错误的指针等特性,Java作为一门编程语言,完全可以单独学习,所以零基础入门也是可以的。
C++有多难,可以看看我的这个回答:C++ 有多难?www.zhihu.com
困难的程度就造就了JAVA相比C++开发效率高一大截。
但是C++依然值得拥有,这点就不解释了。
另外,不管是用JAVA还是C++,程序员多刷算法题好处多多,算法厉害的人进大厂非常容易,这里送一本BAT大佬的算法笔记:BAT大佬的刷题笔记,进大厂必看!mp.weixin.qq.com
祝大家前程似锦,在编码的道路上一马平川。
要是觉得不错的话,那就帮我
点个赞,一键三连呗哈哈哈,硬核码字不易