首先,讲讲为什么我们要讲JAVA的语言进阶,从整体来讲,Java和Android的区别在于Android程序是基于组件和配置的,而且Android开发以Java语言为开发工具,表面上看他们有点同宗不同门,但实际上区别十分大,Android是一个主流智能手机操作系统,Java是一种开发语言,两者没有好坏之分,而且两者也是不同的岗位,从工作岗位来看,安卓从事的是移动互联方向,Java则是从事开发方向。

Android和Java的联系

Android的应用层上的应用程序是用Java编写的,以Java作为开发语言,但是,Java并不等同于Android,因为Android SDK引用了Java SDK的大部分,少数部分被Android SDK所抛弃。所以,要想从事Android的开发,就必须有Java基础。

刷题

我刷题的方式都是老套路了,LeetCode+《剑指offer》,虽然老,但是效果非常不错,除此之外,再搜一搜网上的一些大厂面试题、看了很多面经。这个过程不仅是个脑力活还是体力活,由于不能在公司刷题,我一般的选择方式是在晚上回到家后,刷题、刷面经一个小时到两个小时。当然也可以在上下班的路上抽时间看看题。

边刷题,边整理,方便自己以后可以复习,偶然间一看,居然整理了一千六百多页,下面把我的学习大纲分享给大家:

学习总纲

Java部分

  • Java基础
  • Java并发
  • Java虚拟机

Android部分

  • Android基础
  • Android进阶
  • 开源框架


由于篇幅有限,仅展示部分内容

数据结构

  • 线性表
  • 栈和队
  • 散列查找
  • 排序
  • 海量数据处理

算法

  • 剑指offer
  • LeetCode

设计模式

  • 创建型模式
  • 结构型模式
  • 行为型模式

计算机网络

操作系统

数据库