[★★★资源简介★★★]
《java300集》由北京尚学堂科技高淇老师领衔录制,广受好评。2018年新版课程基于JDK8录制,特点:
1. 全面讲解Java基础技术点
2. 深入(内存分析、JDK源码讲解)
3. 手把手敲代码(让学生理解每个字符来源和老师思考过程)
4. 项目穿插(以项目带教学,学生更强)
《JAVA300集》推出四年来,受到了广泛好评,成为多所985高校推荐学习的视频,甚至北大教授都对学生做强力推荐。
课程目录:
01 java入门阶段
001_如何学习JAVA300集
002_计算机发展史和未来方向
003_多种编程语言介绍
004_JAVA的发展历史和未来
005_JAVA的核心优势和生态体系
006_JAVA三大版本含义_JAVAME和安卓开发的关系
007_JAVA的特性和优势
008_JAVA应用程序的运行机制
009_JDK和JRE和JVM的作用和区别
010_JDK下载和安装_JDK目录介绍
011_JDK环境变量PATH设置_classpath问题
012_控制台测试JDK安装和配置成功
013_写出第一个JAVA程序
014_第一个JAVA程序错误总结
015_第一个JAVA程序详细解析
016_最常用DOS命令
017_常用开发工具介绍
018_eclipse开发环境使用原因
019_eclipse下载版本选择和使用
020_eclipse下建立JAVA项目_项目的结构
021_eclipse开发和运行JAVA程序
022_37分钟零基础开发桌球小游戏项目~1
023_注释(单行注释、多行注释、文档注释)
024_标识符规则_驼峰规则
025_JAVA的关键字保留字
026_变量的本质_声明格式和初始化问题
027_变量分类(局部变量、成员变量、静态变量)
028_常量和final
029_基本数据类型介绍
030_整型变量和整型常量
031_浮点型变量和BigDecimal的使用
032_字符型类型_转义字符
033_布尔型_if语句使用要点
034_运算符介绍
035_算术运算符(二元、自增和自减)
036_赋值和赋值扩展运算符
037_关系运算符
038_逻辑运算符_短路运算详解
039_位运算符
040_字符串连接符
041_条件运算符目
042_运算符优先级_逻辑与或优先问题
043_自动类型转化~1
044_强制类型转换
045_基本类型常见错误_溢出_L问题~1
046_使用Scanner获得键盘输入~1
047_控制语句介绍
048_控制语句_if单选择结构~1
049_ifelse双选择结构~1
050_ifelseifelse多选择结构
051_switch语句的使用
052_while循环详解
053_for循环详解_dowhile简介
054_嵌套循环_循环相关练习
055_break和continue语句
056_带标签的break和continue
057_方法的定义_形参_实参_返回值_语句块
058_方法的重载overload
059_递归算法详解_递归和迭代效率测试
02 面向对象基础
060_面向过程和面向对象区别
061_对象是什么_对象和数据管理
062_对象和类的关系_属性_成员变量_方法
063_一个典型类的写法和调用_类的UML图入门
064_内存分析详解_栈_堆_方法区_栈帧_程序执行的内存变化过程
065_构造方法详解_构造方法重载
066_垃圾回收机制介绍_垃圾回收算法(引用计数和引用可达)
067_通用分代垃圾回收详解(年轻代,年老代,持久代)
068_this的本质_对象创建过程的4步
069_static关键字_内存分析静态变量和静态方法
070_静态初始化块_继承树的追溯
071_JAVA的参数传值机制_值传递
072_java包机制_package的使用_JDK提供的常见包的作用
073_import详解_静态导入详解
074_继承_instanceOf的使用
075_方法的重写override_返回值类型问题
076_Object类的用法_重写toString方法
077_equals方法的重写_阅读Object和String的源码
078_super父类对象引用_继承树追溯问题
079_封装的使用_访问控制符
080_封装的使用细节_javabean的规则
081_多态_多态的三个必要条件
082_对象的转型_向上自动转型_向下强制转型_ClassCastException处理
083_final修饰变量和方法和类
084_数组的使用_内存状态_动态初始化和遍历_数组越界异常
085_数组的3中初始化方式_静态初始化_动态初始化_默认初始化
086_数组的遍历_foreach循环
03 飞机小项目(java入门和对象练习)
087_游戏项目介绍_建立游戏主窗口
088_图形绘制_文本绘制_颜色改变_图像对象的加载
089_线程内部类实现动画
090_游戏物体根类的实现
091_面向对象思想重构飞机类设计
092_键盘控制游戏物体原理
093_面向对象重构飞机类的键盘控制代码
094_炮弹类设计_任意角度飞行
095_容器或数组产生多发炮弹
096_双缓冲解决闪烁问题_矩形检测原理
097_炮弹和飞机的碰撞检测_飞机死掉
098_爆炸类_图片数组轮播处理
099_主窗口画出爆炸类
100_飞机死亡和计时功能
101_总结和期望
04 面向对象深入和数组深入
102_多态_内存分析
103__多态_内存分析深化(模拟Servlet中方法的调用)
104_抽象类_抽象方法
105_接口详解
106_回调的实现_模板方法模式
107_内部类详解
108_String类的常用方法_JDK源码分析
109_String类的补充_常见面试题_内存分析
110_StringBuilder和StringBuffer的使用_常用方法_方法链的实现_JDK源码分析
111_StringBuilder和StringBuffer的使用_JDK源码分析内部机制
112_StringBuilder和StringBuffer的使用_常用方法补充_常见面试题答法
113_模拟ArrayList容器的底层实现_JDK源码分析ArrayList
114_数组_多维数组_基本语法_内存分析
115_数组_多维数组_练习_矩阵运算
116_数组的拷贝_排序_二分法_命令行参数_增强for循环
05 常用类
117_常用类_包装类_Integer_Number_JDK源码分析
118_常用类_自动装箱和拆箱_缓存处理
119_常用类_Date类的使用_JDk源码分析
120_常用类_DateFormat和SimpleDateFormat_时间和字符串的互相转换
121_常用类_Calendar和GregorianCalendar的使用_日期计算
122_常用类_可视化日历程序_01
123_常用类_可视化日历程序_02_
124_常用类_file类的使用
125_常用类_file类_打印目录树状结构_递归算法
06 异常机制
126_异常机制_Exception_Throwable_Error的概念
127_常见异常分类_异常简单处理
128_异常机制_try_catch_finally_return执行顺序
129_声明异常throw_方法重写中异常的处理_手动抛出异常
130_异常机制_自定义异常_总结
07 容器和数据结构
131_容器_基本概念_Collection_Set_List接口介绍
132_容器_List_ArrayList_LinkedList_Vector用法_详解
133_容器_JDK源代码分析_自己实现ArrayList_01_数组扩容_add_get方法的实现
134_容器_JDK源代码分析_自己实现ArrayList_02_remove_set_add方法_equals问题
135_容器_JDK源代码分析_自己实现LinkedList_双向链表的概念_节点定义_add方法
136_容器_JDK源代码分析_自己实现LinkedList_遍历链表_get_remove_add插入节点
137_容器_Map和HashMap的基本用法_hashMap和HashTable的区别
138_容器_自己实现HashMap_SxtMap原始版_效率较低
139_容器_自己实现HashMap_Map底层实现_哈希算法实现_使用数组和链表
140_容器_equals和hashcode_JDK源代码分析
141_容器_List_Map底层源码再分析_bug解决
142_容器_Set_HashSet基本用法_源码分析
143_容器_自定义实现HashSet
144_容器_数据存储综合练习_javabean的介绍
145_容器_数据存储综合练习_map保存表记录
146_容器_迭代器遍历List和Set_List迭代器源代码分析
147_容器_迭代器遍历Map的两种方式
148_自定义泛型_泛型类_泛型接口_泛型方法_安全_省心
149_自定义泛型_深入1_子类_属性类型_重写方法类型_泛型擦除
150_自定义泛型_深入2_无多态_通配符_无泛型数组_jdk7泛型使用
151_自定义实现迭代器_深入迭代器_迭代器原理_面向对象实现
152_HashMap_经典存储_分拣思路_简单_容易
153_HashMap_经典存储_经典分拣思路_与面向对象组合解题
154_排序_冒泡_初级版
155_排序_冒泡_优化版与最终版
156_引用类型_内置类比较_Comparable_排序工具类实现
157_引用类型_内置类比较_Comparator_排序工具类实现
158_引用类型_自定义数据排序
159_引用类型_排序容器_TreeSet与TreeMap
160_工具栏Collections_洗牌
161_Queue接口_单向队列_模拟银行业务_自定义堆栈
162_enumeration接口_Vector_StringTokenizer
163_Hashtable与Properties_绝对_相对_类路径存储与读取
164_引用(强软弱虚)_WeakHashMap_IdentityHashMap与EnumMap
165_容器的同步控制与只读设置
08 IO流技术
166_IO_File_路径常量_绝对与相对路径_构建对象
167_IO_File_常用方法_文件名_判断_长度_创建_删除
168_IO_File_常用方法_文件夹操作_命令模式查找
169_IO_原理_分类_标准步骤
170_IO_字节流_节点流_文件读取_写出_追加文件
171_IO_字节流_节点流_文件的拷贝
172_IO_字节流_节点流_文件夹拷贝_工具制作_文件后缀与软件的关系
173_IO_字节流_节点流_拷贝_工具健壮性
174_IO_字符流_纯文本_节点流_Reader_FileReader_Writer_FileWriter_读取_写出_拷贝
175_IO_缓冲流_BufferedInputStream_BufferedOutputStream_BufferedReader_BuffereWriter
176_IO_转换流_字节转为字符_乱码分析_编码与解码字符集
177_IO_转换流_字节转为字符_InputStreamReader_OutputStreamWriter_文件编码与解码
178_IO_重点流_总结
179_IO_其他流_字节数组流
180_IO_其他流_字节数组流_与文件流对接
181_IO_其他流_基本数据类型处理流
182_IO_其他流_对象处理流_序列化_反序列化
183_IO_关闭流方法_jdk1.7try-with-resource
184_IO_打印流
185_IO_装饰设计模式
186_IO_文件夹bug修复_超长文件夹删除
187_IO_文件分割与合并_RandomAccessFile
188_IO_文件分割与合并_初始化各项参数
189_IO_文件分割与合并_分割
190_IO_文件分割与合并_文件合并_SequenceInputStream
191_IO_总结
09 多线程
192_线程_概念
193_线程创建之一_继承_Thread
194_静态代理模式
195_线程创建之二_接口_Runnable
196_线程创建之三_接口_Callable_Future_龟兔赛跑
197_线程状态与停止线程
198_线程阻塞1_join_yield
199_线程阻塞2_sleep_倒计时_网络延时
200_线程基本信息_优先级
201_线程同步与锁定1_synchronized
202_线程同步与锁定2_synchronized_单例模式_doubleChecking
203_线程_死锁
204_线程_生产者消费者模式_信号灯法
205_线程_任务调度
206_线程_总结
10 网络编程
207_网络编程_概念_网络_端口_URL_TCP_UDP
208_网络编程_InetAddress_InetSocketAddress
209_自定义注解
210_网络编程_UDP编程1_原理
211_网络编程_UDP编程2_发送类型_cs与bs区别
212_网络编程_TCP_Socket通信_原理
213_网络编程_TCP_Socket通信_多个客户端_聊天室原理
214_网络编程_TCP_Socket通信_聊天室_客户端多线程
215_网络编程_TCP_Socket通信_聊天室_群聊
216_网络编程_TCP_Socket通信_聊天室_私聊_构思
217_网络编程_TCP_Socket通信_聊天室_私聊_实现
11 手写服务器httpserver项目(java基础集大成者)
218_手写服务器httpserver_准备_Socket入门
219_手写服务器httpserver_准备_HTML
220_手写服务器httpserver_准备_http协议
221_手写服务器httpserver_准备_http工具
222_手写服务器httpserver_封装Response
223_手写服务器httpserver_封装Request_method_url
224_手写服务器httpserver_封装Request_储存参数_处理中文
225_手写服务器httpserver_封装分发器
226_手写服务器httpserver_多请求处理_多态
227_手写服务器httpserver_多请求处理_反射
228_手写服务器httpserver_xml配置文件_sax解析基础
229_手写服务器httpserver_xml配置文件_sax解析应用
230_手写服务器httpserver_整合最终版
12 注解_反射_字节码_类加载机制
231_注解_Annotation_内置注解
232_自定义注解
233_反射机制读取注解
234_反射机制_介绍_Class对象获取
235_反射机制_动态操作_构造器_方法_属性
236_反射机制_提高反射效率_操作泛型_操作注解
237_动态编译_DynamicCompile_反射调用main方法问题
238_脚本引擎执行javascript代码_Rhino引擎
239_字节码操作_javaassist库_介绍_动态创建新类_属性_方法_构造器
240_字节码操作_javaassist库_介绍_API详解
241_JVM核心机制_类加载全过程_JVM内存分析_反射机制核心原理_常量池理解
242_JVM核心机制_类加载全过程_初始化时机_类的主动引用和被动引用_静态初始化块执行顺序问题
243_JVM核心机制_深入类加载器_层次结构(三种类加载器)_代理加载模式_双亲委派机制
244_JVM核心机制_深入类加载器_自定义文件系统类加载器_网络自定义类加载器
245_JVM核心机制_深入类加载器_自定加密解密类加载器
246_JVM核心机制_线程上下文类加载器_web服务器类加载机制_OSGI技术模块开发原理介绍
13 GOF23设计模式全解
247_【GOF23设计模式】_单例模式_应用场景_饿汉式_懒汉式
248_【GOF23设计模式】_单例模式_双重检查锁式_静态内部类式_枚举式_UML_类图
249_【GOF23设计模式】_单例模式_反射和反序列化漏洞和解决方案_多线程环境测试_CountDownLatch同步类的使用
250_【GOF23设计模式】_简单工厂模式详解_面向对象设计原则_开闭原则_依赖反转原则_迪米特法则
251_【GOF23设计模式】_工厂方法模式详解
252_【GOF23设计模式】_抽象工厂模式详解
253_【GOF23设计模式】_建造者模式详解_类图关系
254_【GOF23设计模式】_原型模式_prototype_浅复制_深复制_Clonable接口
255_【GOF23设计模式】_原型模式_反序列化实现深复制_效率对比_创建型模式总结
256_【GOF23设计模式】_适配器模式_对象适配器_类适配器_开发中场景
257_【GOF23设计模式】_代理模式_静态代理
258_【GOF23设计模式】_代理模式_动态代理_开发中常见的场景
259_【GOF23设计模式】_代理模式_动态代理_内存和调用过程分析_AOP面向切面编程介绍
260_【GOF23设计模式】_桥接模式_多层继承结构_银行日志管理_管理系统消息管理_人力资源的奖金计算
261_【GOF23设计模式】_组合模式_树状结构_杀毒软件架构_JUnite底层架构_常见开发场景
262_【GOF23设计模式】_装饰模式_IO流底层架构_装饰和桥接模式的区别
263_【GOF23设计模式】_外观模式_公司注册流程_迪米特法则
264_【GOF23设计模式】_享元模式_享元池_内部状态_外部状态_线程池_连接池
265_【GOF23设计模式】_责任链模式_公文审批_供应链系统的采购审批_异常链_过滤器和拦截器调用过程
266_【GOF23设计模式】_迭代器模式_JDK内置迭代器_内部类迭代器
267_【GOF23设计模式】_中介者模式_同事协作类_内部类实现
268_【GOF23设计模式】_命令模式_数据库事务机制底层架构实现_撤销和回复
269_【GOF23设计模式】_解释器模式_访问者模_数学表达式动态解析库式
270_【GOF23设计模式】_策略模式_CRM中报价策略_GUI编程中布局管理器底层架构
271_【GOF23设计模式】_模板方法模式_钩子函数_方法回调_好莱坞原则
272_【GOF23设计模式】_状态模式_UML状态图_酒店系统房间状态_线程对象状态切换
273_【GOF23设计模式】_观察者模式_广播机制_消息订阅_网络游戏对战原理
274_【GOF23设计模式】_观察者模式_obserable类和observer接口_应用场景总结
275_【GOF23设计模式】_备忘录模式_多点备忘_事务操作_回滚数据底层架构
14 正则表达式和文本操作
276_正则表达式_介绍_标准字符集合_自定义字符集合_01
277_正则表达式_自定义字符集合特殊用法_量词_贪婪和非贪婪模式_02
278_正则表达式_字符边界_匹配模式(单行和多行模式)_03
279_正则表达式_分支结构_捕获组_非捕获组_反向引用_04
280_正则表达式_预搜索_零宽断言(4个语法结构)_05
281_正则表达式_电话号码_手机号码_邮箱_常用表达式_06
282_正则表达式_开发环境_文本编辑器中使用_07
283_正则表达式_JAVA编程中使用_查找_替换_分割_08
284_正则表达式_手写网络爬虫_基本原理_乱码处理_09
15 JDBC数据库操作
285_JDBC_mysql安装和启动_安装问题的解决
286_JDBC_mysql_navicat客户端软件使用_建库_建表_主键自增_SQL执行
287_JDBC_mysql_环境变量配置_命令行模式操作
288_JDBC_设计架构_驱动类加载_建立Connection_效率测试
289_JDBC_statement接口用法_SQL注入
290_JDBC_PreparedStatement用法_占位符_参数处理
291_JDBC_ResultSet结果集用法_游标原理_关闭连接问题
292_JDBC_批处理Batch_插入2万条数据的测试
293_JDBC_事务概念_ACID特点_隔离级别_提交commit_回滚rollback
294_JDBC_时间处理_Date_Time_Timestamp区别_随机日期生成
295_JDBC_时间操作_时间段和日期段查询
296_JDBC_CLOB文本大对象操作
297_JDBC_BLOB_二进制大对象的使用
298_JDBC_代码总结_简单封装_资源文件properties处理连接信息
299_JDBC_ORM原理_使用Object数组存储一条记录
300_JDBC_ORM原理_Map封装一条记录_Map和List封装多条记录
301_JDBC_ORM原理_使用javabean对象封装一条记录
16 手写SORM框架(学有余力同学观看)
302_【手写SORM框架】_思想介绍_架构介绍
303_【手写SORM框架】_架构设计_接口设计
304_【手写SORM框架】_DBManager_配置信息_获取表结构_TableContext处理
305_【手写SORM框架】_mysql数据类型转化器_MySqlTypeConvertor
306_【手写SORM框架】_根据表信息生成JAVA类源代码_1
307_【手写SORM框架】_根据表结构生成JAVA类源代码_2
308_【手写SORM框架】_同步表结构到po包_生成所有java类
309_【手写SORM框架】_delete方法的实现_class和表结构对应处理
310_【手写SORM框架】_executeDML方法_测试delete方法
311_【手写SORM框架】_插入数据_insert方法的实现
312_【手写SORM框架】_修改数据_update方法实现
313_【手写SORM框架】_查询多行记录封装成List和Javabean_queryRows方法
314_【手写SORM框架】_联表查询测试_VO值对象封装查询结果
315_【手写SORM框架】_其他查询方式_一行记录_一个对象
316_【手写SORM框架】_模板方法模式_回调方法优化Query类
317_【手写SORM框架】_工厂模式QueryFactory_克隆模式
318_【手写SORM框架】_连接池原理_手写连接池
319_【手写SORM框架】_连接池效率测试
320_【手写SORM框架】_jar包和API文档生成
321_【手写SORM框架】_使用说明_配置和启动过程_1
322_【手写SORM框架】_使用说明_bug修复_2
17 预科阶段(针对零基础和行业介绍,可跳过)
324_流行的编程语言,应该怎么选择
325_本行不行,我可以转行到IT开发吗
326_程序员不是青春饭,程序员迈向百万年薪之路
327_零基础学员学习JAVA的秘诀
328_十分钟秒懂编程,程序就是现实逻辑的表达
329_表格思想_理解数据库存储数据
330_表格思想_理解JAVA类和对象
331_表格思想_理解XML文档
332_写出一份吸引面试官的简历(六大要素)
333_面试前,三大步让你秒杀90%竞争者
334_面试中,十大要点吸引面试官
335_技术面试中,不该问的4个问题
336_职场成功的核武器_7A+软实力理论