课程介绍:
史上最细:
讲师授课代码全部手工敲出,真正的手把手教授您如何编程。
史上最深:
基础视频也深刻的从内存结构进行分析、JDK源代码进行分析,这都是高手的必备技能。高手从入门抓起。入门时培养良好的学习习惯极其重要!
讲师介绍:
高淇老师,著名java技术专家,十年开发经验,培训学员数千名。培训的很多的学员已在阿里巴巴、搜狐、新浪、用友等知名企业就职,很多学员已经走向领导岗位。拥有丰富的项目开发经验,这也体现在授课课堂上。高淇老师所授课程代码、甚至课堂笔记基本都是现场手敲出来,流畅至极,深入浅出,广受好评。 学员评价:”听老高的课,酣畅淋漓,一个字爽”。
高淇老师正主持推出300集大型java基础课程视频,史上最全、最深的java课程。本课程从零基础开始讲授,步步深入,全面覆盖了javase的所有技术要点,为大家以后的java开发工作打下坚实的基础。同时,为了适应高端技术人才的需求,录制了更加深入的视频,算法和优化、并行开发设计要领、虚拟机优化等等,这些技术视频针对高级程序员多年开发中的难点要点进行深入剖析。”点穴,解渴,实用”,这是看了我们录制的内部视频的阿里巴巴高级工程师的评价。
因此,这套300集java基础课程适合从零基础开始学习的学员,也适合技术专家作为技术手册来参考学习。
课程内容:
基础课程
基础课程介绍_如何学习
计算机语言发展史_java历史_java核心优势_java三大版本的区别
JDK和JRE和JVM的区别_JDK的下载安装_环境变量配置_测试安装成功
第一个程序_HelloWorld
helloworld深化_文本编辑器的使用_注释
标识符_unicode和GBK_各种字符集的关系
整数类型_进制转换_编程中的L问题
浮点数_浮点数误差问题
char_字符串入门_boolean
基本数据类型自动转换_强制转型_类型提升问题
【补充】JDK7新特性_二进制整数_下划线分隔符
变量_成员变量和局部变量_常量_命名规范
运算符_01_算术_逻辑_位运算符_扩展运算符
运算符_02_字符串连接_三元运算符_优先级问题
eclipse开发环境的使用_建立java项目_运行java项目
eclipse运行程序的问题(src和bin问题)_debug模式
if语句_单选择_双选择_多选择结构
switch语句_基本用法_case穿透现象
jdk7.0新特性_增强switch语句
while语句_dowhile语句
for语句
综合练习_九九乘法表
break和continue_带标签的break和continue
方法_方法的本质_形参_实参_return语句
递归算法详解
_api文档_package的概念_生成自己项目的api文档
键盘输入_Scanner类的使用_import简单入门
面向对象
面向过程和面向对象的本质区别
面向对象的方式思考问题
类和对象的关系_写出我们的第一个类
程序执行过程的内存分析_01
程序执行过程的内存分析_02
虚拟机内存管理_垃圾回收机制_c.和java的比较
构造方法
方法重载_构造方法重载
static变量和方法_内存分析static
this隐式参数_内存分析
继承_基本概念
继承_方法的重写
继承_Object类用法_toString和equals方法_重写toString
继承_super_构造器的调用_继承的内存分析(非常重要)
继承_组合
final_修饰变量_方法_类
封装
多态_基本概念_强制转型问题_instanceof运算符
多态_内存分析
多态_内存分析深化(模拟servlet中方法的调用)
抽象类_抽象方法
接口详解
回调的实现_模板方法模式
内部类详解
数组
数组基本概念_内存分析
数组的三种初始化方式
String类的常用方法_JDK源码分析
String类的补充_常见面试题_内存分析
StringBuilder和StringBuffer的使用_常用方法_方法链的实现_JDK源码分析
StringBuilder和StringBuffer的使用_JDK源码分析内部机制
StringBuilder和StringBuffer的使用_常用方法补充_常见面试题答法
模拟ArrayList容器的底层实现_JDK源码分析ArrayList
多维数组_基本语法_内存分析
多维数组_练习_矩阵运算
数组的拷贝_排序_二分法_命令行参数_增强for循环
常用类
包装类_Integer_Number_JDK源码分析
自动装箱和拆箱_缓存处理
Date类的使用_JDk源码分析
DateFormat和SimpleDateFormat_时间和字符串的互相转换
Calendar和GregorianCalendar的使用_日期计算
可视化日历程序_01
可视化日历程序_02_
file类的使用
file类_打印目录树状结构_递归算法
异常
Exception_Throwable_Error的概念
常见异常分类_异常简单处理
try_catch_finally_return执行顺序
声明异常throw_方法重写中异常的处理_手动抛出异常
自定义异常_总结
游戏项目
加载窗口_画图形_加载图片_编程中坐标基本知识
图片的加载
动画的实现
物体的水平和纵向移动
台球游戏核心功能开发_物体沿着任意角度飞行和停止
椭圆轨迹飞行的实现
使用继承封装MyFrame作为以后窗口类共同父类
太阳系模型_基本类的封装_Star类的建立
太阳系模型_Planet类的实现_构造器的优化和调用
太阳系模型_Planet对象的运行轨迹
太阳系模型_卫星的处理_轨迹的处理_添加其他行星
飞机游戏_游戏基本框架搭建_Plane类的定义
飞机游戏_键盘控制飞机的运动_四个方向
飞机游戏_键盘控制八个方向的运行算法
飞机游戏_子弹类定义_将子弹加入容器中_子弹类飞行规则
飞机游戏_碰撞检测_双缓冲技术解决屏幕闪烁
飞机游戏_重构游戏中的实体类
飞机游戏_飞机死亡的处理_游戏中提示文字的处理
飞机游戏_游戏时间和等级的计算
飞机游戏_爆炸的实现_图片数组的处理
飞机游戏bug调整_导出jar
总复习
编程基础和面向对象总复习
容器
基本概念_Collection_Set_List接口介绍
List_ArrayList_LinkedList_Vector用法_详解
JDK源代码分析_自己实现ArrayList_01_数组扩容_add_get方法的实现
JDK源代码分析_自己实现ArrayList_02_remove_set_add方法_equals问题
JDK源代码分析_自己实现LinkedList_双向链表的概念_节点定义_add方法
JDK源代码分析_自己实现LinkedList_遍历链表_get_remove_add插入节点
Map和HashMap的基本用法_hashMap和HashTable的区别
自己实现HashMap_SxtMap原始版_效率较低
自己实现HashMap_Map底层实现_哈希算法实现_使用数组和链表
equals和hashcode_JDK源代码分析
List_Map底层源码再分析_bug解决
Set_HashSet基本用法_源码分析
自定义实现HashSet
数据存储综合练习_javabean的介绍
数据存储综合练习_map保存表记录
迭代器遍历List和Set_List迭代器源代码分析
迭代器遍历Map的两种方式
自定义泛型_泛型类_泛型接口_泛型方法_安全_省心
自定义泛型_深入1_子类_属性类型_重写方法类型_泛型擦除
自定义泛型_深入2_无多态_通配符_无泛型数组_jdk7泛型使用
自定义实现迭代器_深入迭代器_迭代器原理_面向对象实现
HashMap_经典存储_分拣思路_简单_容易
HashMap_经典存储_经典分拣思路_与面向对象组合解题
排序_冒泡_初级版
排序_冒泡_优化版与最终版
引用类型_内置类比较_Comparable_排序工具类实现
引用类型_内置类比较_Comparator_排序工具类实现
引用类型_自定义数据排序
引用类型_排序容器_TreeSet与TreeMap
工具栏Collections_洗牌
Queue接口_单向队列_模拟银行业务_自定义堆栈
enumeration接口_Vector_StringTokenizer
Hashtable与Properties_绝对_相对_类路径存储与读取
引用(强软弱虚)_WeakHashMap_IdentityHashMap与EnumMap
容器的同步控制与只读设置
guava与apache的准备工作(jar.src.doc)与git工具
guava之只读、函数式编程(过滤.转换.约束)、集合
guava之实用功能_Multiset、Multimap与BiMap
guava之Table_成绩表行转列
commons之函数式编程1_Predicate_Transformer
commons之函数式编程2_Closure
commons之集合与队列
commons之迭代器(Map、过滤、循环)_双向Map_包
容器_重点总结_一三六九
IO
File_路径常量_绝对与相对路径_构建对象
File_常用方法_文件名_判断_长度_创建_删除
File_常用方法_文件夹操作_命令模式查找
原理_分类_标准步骤
字节流_节点流_文件读取_写出_追加文件
字节流_节点流_文件的拷贝
字节流_节点流_文件夹拷贝_工具制作_文件后缀与软件的关系
字节流_节点流_拷贝_工具健壮性
字符流_纯文本_节点流_Reader_FileReader_Writer_FileWriter_读取_写出_拷贝
缓冲流_BufferedInputStream_BufferedOutputStream_BufferedReader_BuffereWriter
转换流_字节转为字符_乱码分析_编码与解码字符集
转换流_字节转为字符_InputStreamReader_OutputStreamWriter_文件编码与解码
重点流_总结
其他流_字节数组流
其他流_字节数组流_与文件流对接
其他流_基本数据类型处理流
其他流_对象处理流_序列化_反序列化
关闭流方法_jdk1.7try-with-resource
打印流
装饰设计模式
文件夹bug修复_超长文件夹删除
文件分割与合并_RandomAccessFile
文件分割与合并_初始化各项参数
文件分割与合并_分割
文件分割与合并_文件合并_SequenceInputStream
总结
线程
概念
线程创建之一_继承_Thread
静态代理模式
线程创建之二_接口_Runnable
线程创建之三_接口_Callable_Future_龟兔赛跑
线程状态与停止线程
线程阻塞1_join_yield
线程阻塞2_sleep_倒计时_网络延时
线程基本信息_优先级
线程同步与锁定1_synchronized
线程同步与锁定2_synchronized_单例模式_doubleChecking
死锁
生产者消费者模式_信号灯法
任务调度
总结
网络编程
概念_网络_端口_URL_TCP_UDP
InetAddress_InetSocketAddress
URL_爬虫原理
UDP编程1_原理
UDP编程2_发送类型_cs与bs区别
TCP_Socket通信_原理
TCP_Socket通信_多个客户端_聊天室原理
TCP_Socket通信_聊天室_客户端多线程
TCP_Socket通信_聊天室_群聊
TCP_Socket通信_聊天室_私聊_构思
TCP_Socket通信_聊天室_私聊_实现
手写服务器httpserver
准备_Socket入门
准备_html
准备_http协议
准备_http工具
封装Response
封装Request_method_url
封装Request_储存参数_处理中文
封装分发器
多请求处理_多态
多请求处理_反射
xml配置文件_sax解析基础
xml配置文件_sax解析应用
整合最终版
注解
Annotation_内置注解
自定义注解
反射机制
反射机制读取注解
介绍_Class对象获取
动态操作_构造器_方法_属性
提高反射效率_操作泛型_操作注解
动态编译_DynamicCompile_反射调用main方法问题
脚本引擎执行javascript代码_Rhino引擎
字节码操作_javaassist库_介绍_动态创建新类_属性_方法_构造器
字节码操作_javaassist库_介绍_API详解
JVM核心机制
类加载全过程_JVM内存分析_反射机制核心原理_常量池理解
类加载全过程_初始化时机_类的主动引用和被动引用_静态初始化块执行顺序问题
深入类加载器_层次结构(三种类加载器)_代理加载模式_双亲委派机制
深入类加载器_自定义文件系统类加载器_网络自定义类加载器
深入类加载器_自定加密解密类加载器
线程上下文类加载器_web服务器类加载机制_OSGI技术模块开发原理介绍
内部类分类介绍_静态内部类详解_成员内部类详解
方法内部类_final修饰局部变量问题_匿名内部类(继承式和接口式和参数式)
GOF23设计模式
单例模式_应用场景_饿汉式_懒汉式
单例模式_双重检查锁式_静态内部类式_枚举式_UML_类图
单例模式_反射和反序列化漏洞和解决方案_多线程环境测试_CountDownLatch同步类的使用
简单工厂模式详解_面向对象设计原则_开闭原则_依赖反转原则_迪米特法则
工厂方法模式详解
抽象工厂模式详解
建造者模式详解_类图关系
原型模式_prototype_浅复制_深复制_Clonable接口
原型模式_反序列化实现深复制_效率对比_创建型模式总结
适配器模式_对象适配器_类适配器_开发中场景
代理模式_静态代理
代理模式_动态代理_开发中常见的场景
代理模式_动态代理_内存和调用过程分析_AOP面向切面编程介绍
桥接模式_多层继承结构_银行日志管理_管理系统消息管理_人力资源的奖金计算
装饰模式_IO流底层架构_装饰和桥接模式的区别
外观模式_公司注册流程_迪米特法则
享元模式_享元池_内部状态_外部状态_线程池_连接池
责任链模式_公文审批_供应链系统的采购审批_异常链_过滤器和拦截器调用过程
迭代器模式_JDK内置迭代器_内部类迭代器
中介者模式_同事协作类_内部类实现
命令模式_数据库事务机制底层架构实现_撤销和回复
解释器模式_访问者模_数学表达式动态解析库式
策略模式_CRM中报价策略_GUI编程中布局管理器底层架构
模板方法模式_钩子函数_方法回调_好莱坞原则
状态模式_UML状态图_酒店系统房间状态_线程对象状态切换
观察者模式_广播机制_消息订阅_网络游戏对战原理
观察者模式_obserable类和observer接口_应用场景总结
备忘录模式_多点备忘_事务操作_回滚数据底层架构
正则表达式
介绍_标准字符集合_自定义字符集合_01
自定义字符集合特殊用法_量词_贪婪和非贪婪模式_02
字符边界_匹配模式(单行和多行模式)_03
分支结构_捕获组_非捕获组_反向引用_04
预搜索_零宽断言(4个语法结构)_05
电话号码_手机号码_邮箱_常用表达式_06
开发环境_文本编辑器中使用_07
JAVA编程中使用_查找_替换_分割_08
手写网络爬虫_基本原理_乱码处理_09
JDBC
mysql安装和启动_安装问题的解决
mysql_navicat客户端软件使用_建库_建表_主键自增_SQL执行
mysql_环境变量配置_命令行模式操作
设计架构_驱动类加载_建立Connection_效率测试
statement接口用法_SQL注入
PreparedStatement用法_占位符_参数处理
ResultSet结果集用法_游标原理_关闭连接问题
批处理Batch_插入2万条数据的测试
事务概念_ACID特点_隔离级别_提交commit_回滚rollback
时间处理_Date_Time_Timestamp区别_随机日期生成
时间操作_时间段和日期段查询
CLOB文本大对象操作
BLOB_二进制大对象的使用
代码总结_简单封装_资源文件properties处理连接信息
ORM原理_使用Object数组存储一条记录
ORM原理_Map封装一条记录_Map和List封装多条记录
ORM原理_使用javabean对象封装一条记录
手写SORM框架
思想介绍_架构介绍
架构设计_接口设计
DBManager_配置信息_获取表结构_TableContext处理
mysql数据类型转化器_MySqlTypeConvertor
根据表信息生成JAVA类源代码_1
根据表结构生成JAVA类源代码_2
同步表结构到po包_生成所有java类
delete方法的实现_class和表结构对应处理
executeDML方法_测试delete方法
插入数据_insert方法的实现
修改数据_update方法实现
查询多行记录封装成List和Javabean_queryRows方法
联表查询测试_VO值对象封装查询结果
其他查询方式_一行记录_一个对象
模板方法模式_回调方法优化Query类
工厂模式QueryFactory_克隆模式
连接池原理_手写连接池
连接池效率测试
jar包和API文档生成
使用说明_配置和启动过程_1
使用说明_bug修复_2
相关资源