学习Java如何才算是入门,这是很多初学者要接触的第一个知识上的瓶颈,Java如何学习、学习到那一步才能够成功继续往下走。

万事开头难编程入门更是如此,编程入门我们了解语言的体系,锻炼自己的编程思维方式,牢记编程式英语等等。

学习Java是一件比较无聊的阶段,每天的都要面对的是一堆堆陌生的代码、语句和判断,所以学习编程重要的是坚持不懈的学习。

首先 声明Java语言学习起来是比较难的,虽然去掉啦C++里面一些恼人特性,但是对于一门编程语言的来说只是提高啦你对一门语言能学下去的动力。Java编程语言整体来讲还是有一些难度。

所以要啃学、啃练、多敲、多记,学习Java语言是非常容易够上手的。

 

下面我们来详细说一下如何入门Java编程语言

Java语言:

Java简单,易于设计,易于编写,因此比其他任何Java都易于编译,调试和学习。Java是面向对象的,用于构建模块化程序和其他应用程序中的可重用代码。Java与平台无关,可移植复制。

Java是一种非常通用的语言,因此可以在许多不同的环境中使用。还可以在许多不同的平台上运行,因此可以在Linux机器,Unix,Mac,Windows或手机上运行它。因此,它几乎可以与任何东西一起使用。

它是一种面向对象的语言,因此您在Java中学习的许多基础概念都可以转移到其他语言。

 

第一步:理论阶段讲说

了解Java编程

学习一下Java跨平台的原理,Java三大版本分别对应哪些方面,了解什么是JVM?什么是JDK? 什么是JRE?JDK,JRE,JVM三者关系概括等。

了解语法

语法:Java语言语法必须熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。

了解Java的执行

Java的安装目录了解,Java语言是如何进行跨平台,Java的安全性主要体现在那里。

了解命令

必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、HtmlConverter、jar、java、javac、javadoc、javap、javaw、native2ascii、serialver,如果这些命令你没有全部使用过,那么你对java实际上还很不了解。

了解工具的使用

至少熟练使用一种IDE的开发工具,例如Eclipse、Netbeans、JBuilder、Jdeveloper、IDEA、JCreator或者Workshop,包括进行工程管理、常用选项的设置、插件的安装配置以及进行调试。


树立良好的编程思维

编程思维的树立可以通过购买书籍来拓展,也可以通过在学习编程中潜移默化的掌握。

在编程中详细掌握一下三点:

其一是把握Java言语的根本抽象概念,涉及到类和接口两个重要的主线;其二是把握Java编程进程;其三是把握Java编程的各种特征,包括封装、继承、多态等

 

第二步:掌握基础 变量、数据类型、运算符

四类八种、运算操作、i++和++i的异同之处、&和&&的联系、基本数据类型的类型转换规则、if多分支语句和switch多分支语句的异同之处等,基础知识掌握必须学习的知识点;

学习时间:3天

  • 二进制和十进制的转化
  • 注释、单行注释、多行注释、文本注释、注释内容和字节码的关系
  • 标识符、关键字、驼峰原则
  • 变量的本质、内存画图、变量声明和初始化
  • 变量的分类和作用域(局部变量、成员变量、静态变量)
  • 常量和Final
  • 基本数据类型介绍
  • 整型变量和整型常量
  • 浮点类型、float、double
  • char字符型、转义字符
  • boolean布尔型、if语句使用要点、布尔类型占用空间问题
  • 运算符介绍
  • 算数运算符(二元、自增、自减)
  • 赋值和赋值运算符
  • 关系运算符详解
  • 逻辑运算符、短路运算符详解
  • 位运算符详解
  • 字符串连接符
  • 条件运算符(三元运算符)
  • 运算符优先级问题
  • 自动类型转换详解
  • 强制类型装换详解
  • 基本数据类型装换常见错误、溢出、L问题
  • 使用Scanner获取键盘输入

 

第三步:控制语句

while和do-while循环的区别、break和continue的作用、if多分支语句和switch多分支语句的异同之处需要深度掌握的内容;

学习时间:2天

  • 控制语句和实现逻辑对应
  • if单选结构
  • if_elseif_else多选结构
  • switch语句_IDEA更换主题
  • 循环_while
  • 循环_for循环_dowhile
  • 嵌套循环
  • break和continue语句_标签_控制语句底层原理
  • 写一个年薪计算机_百度查问题的秘诀(重要)
  • 个人所得税计算器软件
  • 方法核心详解_天才思维模型教你高手学习思维模式
  • 方法的重载
  • 递归结构讲解_递归头_递归体

 

第四步:面向对象编程

面向对象的特征有哪些方面?举例来描述、Java中如何实现多态、接口和抽象类的区别、this关键字的作用、面向对象三大特性解释,牢记课程

学习时间:5天

  • 面向过程和面向对象的区别
  • 类和对象的概述
  • 类的属性和方法
  • 创建对象内存分析
  • 构造方法(Construtor)及重载
  • 对象类型的参数传递
  • this关键字
  • static关键字详解
  • 局部代码块、构造代码块和静态代码块
  • package和import详解
  • JavaDoc生成API文档
  • 面向对象的三大特性
  • 面向对象之【封装(Encapsulation)】
  • 访问权限修饰符
  • 面向对象之【继承(Inheritance)】
  • Object类
  • 方法重写Override
  • super关键字详解
  • 重写equals()和toString()
  • 继承中对象创建的内存分析
  • 面向对象之【多态(Polymorphism)】
  • 向上转型
  • 向下转型
  • instanceof运算符
  • 编译时和运行时详解
  • final修饰符
  • 抽象类和抽象方法(abstrct)
  • 接口的定义和实现
  • JDK8的接口新特性
  • 接口应用:内部类比较器Comparable
  • 内部类详解
  • Java的内存管理与垃圾回收

 

第五步:异常机制的了解

学习时间:1天

  • 异常的概述
  • 异常的执行过程与分析
  • try-catch-finally捕捉异常
  • throw抛出异常
  • throws声明异常
  • 异常继承体系
  • 运行时异常和编译异常
  • 自定义异常

 

第六步:Java常用类

学习时间:3天

  • Wrapper包装类
  • 自动装箱和自动拆箱
  • 包装类的源码分析
  • String类的使用与内存原理
  • String类的源码分析
  • StringBuffer
  • StringBuilder
  • 字符串处理类性能分析
  • Date类
  • System类
  • DateFormat类
  • Calendat类
  • Math类
  • BigInteger类和BigDecimal类
  • Random类
  • 枚举类
  • File类
  • 常见的面试题讲述与分析

 

第七步:数据结构算法

数据结构于算法的学习,可以学习一些常用的知识点非常用的可以回头在学习。

学习时间:3天

  • 数据结构的概述
  • 线性表
  • 顺序表
  • 链表
  • 栈和队列
  • 二叉树
  • 二叉查找树
  • 二叉平衡树
  • 黑红树
  • 冒泡排序
  • 选择排序
  • 递归
  • 折半查找

 

第八步:集合(容器)

学习时间:3天

  • 集合和数组的联系和区别
  • 集合框架体系
  • ArrayList的使用和源码分析
  • 集合中使用泛型
  • LinkedList的使用和源码分析
  • HashSet的使用和源码分析
  • 哈希表及原理
  • TreeSet的使用和源码分析
  • 比较器Comparable和Comparator
  • HashMap的使用和源码分析
  • TreeMap的使用和源码分析
  • Iterator于ListIterator
  • Collections工具类
  • 旧集合类Vector、Hashtable
  • 集合总结和选择依据
  • 泛型接口
  • 泛型类
  • 泛型方法

 

第九步:IO流

学习时间:2天

  • IO流的概念
  • IO流的分类及其原理分析
  • 文件流FlieInputStream、FileOutputStream
  • 缓冲流BufferedInputStream、BufferedOutputStream
  • 数据流ObjectInputStream、ObjectOutputStream
  • 序列化和反序列化
  • 转换流InputStreamReader、OutputStreamWriter
  • 打印流PrintWrite和PrintStream
  • 数组流ByteArrayOutputStream、ByteArrayInputStream
  • 使用IO复制文件夹

 

第十步:多线程

学习时间:2天

  • 进程和线程
  • 线程的创建与启动
  • 创建线程的三种方式对比
  • 线程的生命周期
  • 线程控制
  • 多线程的安全问题与解决办法
  • 线程的同步:同步代码块
  • 线程的同步:同步方法
  • 线程的同步:Lock锁
  • 线程的死锁问题
  • 线程通信
  • Condition
  • 线程的完整生命周期
  • 线程池ThreadPoolExecutor
  • ForkJoin框架
  • ThreadLocal类

 

第十一步:网络编程

学习时间:1天

  • 计算机网络基础知识
  • 网络通信协议
  • OSI参考模型
  • TCP/IP参考模型
  • 数据的封装与拆封原理解析
  • TCP协议
  • UDP协议
  • IP地址和端口号
  • URL和Socket
  • 使用TCP编程实现登录功能
  • 使用UDP编程实现客服系统
  • 使用TCP编程实现文件上传

 

第十二步:设计模式

学习时间:3天

  • 设计模式入门
  • 面向对象设计七大原则
  • 简单工厂模式
  • 工厂方法模式
  • 单例模式
  • 原型模式
  • 装饰模式
  • 适配器模式
  • 外观模式

 

Java编程配套课程推荐:

1.北京高淇Java300集(强烈推荐)

​Java300集零基础适合初学者视频教程_Java300集零基础教程_Java初学入门视频基础巩固教程_Java语言入门到精通_哔哩哔哩_bilibili​

2.JavaSE基础全套-从零开始进阶之大神

​JavaSE知识基础全套-从0开始进阶大神_JavaSE基础知识体系从入门到精通框架_/JAVA基础/数组/OOP/集合/IO流_哔哩哔哩_bilibili​

3.Java全套课程-基础必备课程

​JAVA全套课程_Java入门_Java零基础必备_Java编程课程_Java核心基础_EasyUI_SSM整合框架_Redis_高并发—全套课程_哔哩哔哩_bilibili​

4.Java常用类基础实战

​日常推荐Java常用类基础实战_通俗易懂实战入门教程_Java八大常用类核心基础/Java包装类/String类_哔哩哔哩_bilibili​

5.Java基础入门必备数学知识【数据结构与算法】

​Java基础入门必学知识数据结构与算法_Java数据结构与算法基础到进阶_Java面试常见数据结构和算法问题_排序算法_递归_折半查询_栈和队列_链表_哔哩哔哩_bilibili​

6.Java面向对象编程_OOP基础深入讲解

​Java面向对象编程重基础深入讲解_OOP面向对象Java基础干货分享/JavaSE/面向对象编程/OOP程序设计_哔哩哔哩_bilibili​

7.GOF23种设计模式-23中设计模式详解课程

​GOF23种设计模式讲解_Java gof23种设计模式详解课程_从单例到备忘录模式 23种模式详解_哔哩哔哩_bilibili​

 

以上所有知识点一步一步坚持学习,可以达到Java入门,学习Java基础的时候,应该尽量多动手,很多时候,你想当然的事情,等你写出来运行一下,你就会发现不是这么回事儿。Java基础是一个多敲多练的阶段,学习完毕之后可以快速的复习一遍效果更好。

 

推荐编程入门的需要学习的书。

一、Java编程入门类

对于没有Java编程经验的程序员要入门,随便读什么入门书籍都一样,这个阶段需要你快速的掌握Java基础语法和基本用法,宗旨就是“囫囵吞枣不求甚解”,先对Java熟悉起来再说。用很短的时间快速过一遍Java语法,连懵带猜多写写代码,要“知其然”。

1、《Java编程思想》

在有了一定的Java编程经验之后,你需要“知其所以然”了。这个时候《Java编程思想》是一本让你知其所以然的好书,它对于基本的面向对象知识有比较清楚的交待,对Java基本语法,基本类库有比较清楚的讲解,可以帮你打一个良好的Java编程基础。这本书的缺点是实在太厚,也比较罗嗦,不适合现代人快节奏学习,因此看这本书要懂得取舍,不是每章每节都值得一看的,挑重点的深入看就可以了。

2、《Agile Java》中文版

这本书一大特点是以单元测试和TDD来贯穿全书的,在教你Java各种重要的基础知识的过程中,潜移默化的影响你的编程思维走向敏捷,走向TDD。另外这本书成书很新,以JDK5.0的语法为基础讲解,要学习JDK5.0的新语法也不错。还有这本书对于内容取舍也非常得当,Java语言毕竟类库庞大,可以讲的内容太多,这本书选择的内容以及内容的多寡都很得当,可以让你以最少的时间掌握Java最重要的知识,顺便培养出来优秀的编程思路,真是一本不可多得的好书。

二、Java编程进阶类

打下一个良好的Java基础,还需要更多的实践经验积累,我想没有什么捷径。有两本书值得你在编程生涯的这个阶段阅读,培养良好的编程习惯,提高你的代码质量。

1、《重构 改善既有代码的设计》

这本书名气很大,不用多介绍,可以在闲暇的时候多翻翻,多和自己的实践相互印证。这本书对你产生影响是潜移默化的。

2、《测试驱动开发 by Example》

本书最大特点是很薄,看起来没有什么负担。你可以找一个周末的下午,一边看,一边照做,一个下午就把书看完,这本书的所有例子跑完了。这本书的作用是通过实战让你培养TDD的思路。

 

还有一些比较基础的入门书籍推荐给你

1、《Head First java开发》

《Head First java开发》是本完整的面向对象(object-oriented,OO)程序设计和java开发的学习指导。此书是根据学习理论所设计的,让你可以从学习程序语言的基础开始一直到包括线程、网络与分布式程序等项目。最重要的,你会学会如何像个面向对象开发者一样去思考。但如果你真地想要好好地学习java开发,你会需要《Head First java开发》。这本书可是Amazon编辑推荐的十大好书之一!强烈推荐学习此书,非常适合初学者入门。

2、《java开发从入门到精通》

《java开发从入门到精通》这本书主要针对java开发基础,对于没有学过java开发的人才说,是一个不错的选择。通过这本书,大家可以从零开始,慢慢码销搜来学习,而且实操很多,不会让你看到最后出现只会理论的情况。

3、《Thinking in java开发》(中文名:《java开发编程思想》)

《java开发编程思想》可以说迟历是最经典的java开发着作,是所有java开发程序员必备教科书。这本书不管是正在学习还是已经工作许多年的程序员,都可以从这本书中得到你想要的东西。这本书具有教材和工具书的作用,就像一本字典,想知道什么都可以从中查询。虽然这本书很好,但并不建斗樱议初学者学习,对于初学者难度较大。

4、《疯狂java开发讲义》

《疯狂的讲义》这本书比较适合自学者,内容比较项目化,实操方法很多,如果你想进行java开发的深入学习,不妨看看这本书。

5、《java开发核心技术》

这本书分为两个部分,第一个部分讲的是基础知识,第二个部分讲的是高级特性。由于内容非常有层次,所以非常适合自学的同学学习。

 

感谢阅读~~