前言
就现实点看看,可以对比现在Java和C++的市场占有率,可以看到,到目前为止,Java在国内编程语言的市场仍然是占据着大头,在招聘当中Java的人数占有率仍然是遥遥领先于C++,Java目前开阔的市场以及其巨大的岗位需求,使得你可以在大多数的地方都可以谋一份饭吃。
再来看看从学习的难度上看,C++是更加偏于底层的,比较适合做系统的开发,所以这方面的岗位的入职需求和门槛都相对比较高,反观Java后端方面,它已经是形成了一套非常固定的模式,更加适合快速开发应用,你有一定的C++基础再学习Java对其的接受度也会对应高很多。
最后我们可以再从C++和Java的开发效率来看看,C++是面向内存编程,Java是面向数据结构编程,在C++里程序员几乎是掌控一切,Java里程序员可以说仅仅是一个操作员,首先可以明显看出的一点便是C++和Java在入门的难度这一块,Java相比C++而言对于初学者来说是友好的,C++是在C的基础上进行优化,但它作为与C所不同的面向对象的语言,不仅有C的数组、结构体、指针等内容,同时也新添加了抽象、封装、继承、多态的特性,Java则是继承了C++面向对象的技术核心,舍弃了容易发生错误的指针,从这一层面上可以说Java语言本身就是对C++的优化(仅仅是从初学者的角度,指针还是非常有用的),C++知识点的庞大固然能看出其潜力的巨大,但同时作为学习者或者开发者,对同一件事情用C++和Java解决所用的时间是不同的,Java没有指针,不用担心内存泄露的问题,同时Java的限制是很大的,对于问题的实现方法少且一些解决过程中相比C++需要注意的细节是比较少或者是完全不需要考虑,还有一点是Java没有像C++那样的需要手动回收释放内存的操作。总的来说,可以说Java是对开发一个项目一种“快餐式”的解决方法,注重的是一个“快”字,也就是效率,但是整体来说相对是比较“简”或是“糙”的,而C++注重的是在你完成一个项目之后的性能优化方面,可以说是“鸡蛋里挑骨头”,相对来说讲究一个“精”和“细”。
所以,如果在这两个里面非要选一个,我的建议是Java。
此外,可以看看我下面Java的学习路线一些资源分享,希望对你有帮助喔~
先放上Java学习总体的思维导图 :
学习前准备
准备开发工具,这里推荐IDEA(全称 IntelliJ IDEA),首先安装好IDEA,并配置好环境,然后可以熟悉一下IDEA的快捷键操作和相关设置等
IDEA官网:https://www.jetbrains.com/zh-cn/idea/
IDEA环境配置具体操作:[https://blog.csdn.net/qq_33215972/article/details/73693140
IDEA官方快速上手教程:https://www.jetbrains.com/zh-cn/idea/resources/
阶段一:Java 基础
通过本阶段的学习,初步认识Java相关的语法以及一些基础知识,学会编译一些简单的程序
相关资源
文档教程
【菜鸟教程】:https://www.runoob.com/java/java-tutorial.html
视频教程
【siki学院】Java编程学习第一季: https://www.sikiedu.com/course/157
【siki学院】Java编程学习第二季:http://www.sikiedu.com/course/165
【siki学院】Java编程学习第三季:http://www.sikiedu.com/course/202
【siki学院】Java编程学习第四季:https://www.sikiedu.com/course/205
文章推荐
Java基础知识点总结归纳:[https://blog.csdn.net/qq_41701956/article/details/116375749
书籍推荐
【推荐一】《Head First Java(中文版)》
豆瓣评分8.6高分书籍,这本书利用图文结合的方式来将原本枯燥的代码以图片的形式来讲述,且其中配置了大量的代码练习,结合上面推荐的教学视频,通过学习和大量敲代码的练习更容易掌握对应知识点
》》【电子书】下载链接:
链接:https://pan.baidu.com/s/1uD0xwaU0IZhblN4wE0iOzw?pwd=siki 提取码:siki
》》【纸质书】当当链接:https://product.dangdang.com/9265169.html
【推荐二】《Effective Java中文版(原书第3版)》
豆瓣评分9.0高分书籍,这本书我觉得学Java的人都需要看一下,它能教授你眼前一亮的编程概念,帮你更加有效地使用Java编程语言及其基本类库
》》【电子书】下载链接:
链接:https://pan.baidu.com/s/1k5vLqNqBd-YQ5jHsrH0v7g?pwd=siki
提取码:siki
》》【纸质书】链接:https://product.dangdang.com/26437835.html
面试题
Java基础面试题:(https://juejin.cn/post/6844904127059738631)
阶段二:数据库
当下大部分企业都是用关系数据库来储存数据,其中最具代表性的就是MySQL
相关资源
文档教程
【MySQL】官网:MySQL
【MySQL】官方文档:MySQL Documentation
【JDBC】官方教程:https://pingfangx.github.io/java-tutorials/jdbc/basics/index.html
视频教程
【siki学院】MySQL:https://www.sikiedu.com/course/48
【siki学院】JDBC:https://www.sikiedu.com/course/203
文章推荐
【推荐1】MySQL必备基础知识(常用):https://blog.csdn.net/weixin_51483932/article/details/115582156
【推荐2】如何系统学习 MySQL?:如何系统学习 MySQL? - 知乎
【推荐3】JDBC详细介绍: