我们尚学堂JAVA课程主要针对那些想要学JAVA的学员,12年时间打磨,紧跟市场需求的JAVA课程,改版次数119次,新版本:v.13.2,引入新技术:JAVA10、微服务架构(Spring Boot、Spring Data、Spring Cloud)、互联网架构技术、SSM三大框架等,时时与企业使用的技术保持同步
阶段名称 | 技术名称 | 技术内容 | 学习目标 |
---|---|---|---|
JavaSE | Java语言概述 |
1)Java编程语言发展简史
2)Java编程语言主要特征
3)Java技术体系以及平台介绍
4)Java核心机制与JVM运行原理
5)搭建Java开发环境
6)JDK的安装与配置
7)开发*个Java程序
8)Java程序的执行原理
9)字节码反编译(jd-gui.exe和javap)
10)变量的声明与使用
11)变量内存空间分配与原理
12)进制转换与位运算
13)八大基本数据类型
14)基本数据类型之间的转换
15)变量的运算与底层运算原理
16)常见面试题讲解
|
1.了解Java语言的一个发展史 2.掌握手动安装JDK,配置环境变量 3.掌握*个java程序(HelloWorld.java) 4.掌握javac.exe以及java.exe命令的含义 5.掌握变量的作用和定义的方式 6.能根据实际情况选择使用8种基本数据类型 7.掌握常见的转义字符和字符集相关的知识 8.掌握数据类型之间的互相转换(强制转换和自动转换) |
桌球游戏项目 | 根据项目截图,完成桌球游戏开发。目标:书写代码,增强学生写代码的速度,掌握Java代码基本结构,找到感觉,增强自信心。如果在敲代码的过程中发生错误,学生能够根据提示的错误,来分析、调试从而解决问题(要求学生理解代码的语法功能,只要按照代码结构输入代码,能够经过调试实现代码的正常运行即可)。 | ||
流程控制 |
1)Java代码的执行流程介绍
2)if选择结构
3)Scanner键盘录入
4)switch选择结构
5)使用Random生成随机数
6)while循环结构
7)do-while循环结构
8)for循环结构及执行顺序
9)跳转语句:break、continue、return
10)多重循环及指定跳出循环
11)方法的声明与使用
12)方法调用的内存分析
13)方法重载Overload
|
1.掌握if语句和switch语句的区别和使用场合 2.掌握基本的Scanner键盘录入数据和生成随机数 3.掌握break在switch中的用法以及default语句 4.掌握三种循环的书写格式以及执行顺序 5.掌握while和do-while的区别,了解for和while的特点 6.掌握break和continue关键字,了解return的作用 7.掌握嵌套循环的使用,掌握流程控制中常见的一些算法 8.了解死循环和不可达语句 9.掌握方法的声明与使用,以及调用方法时的内存分析 10.掌握方法的重载Overload和使用场合 |
|
万年历项目 | 输入年份和月份,显示本月的日历(本日历是从1900年开始)。因为1900年1月1日为星期一,所以先计算从1900年到输入本月份之前的总天数和本月的总天数,然后计算本月中的1号为星期几,最后再控制台打印本月的日历。目标:以面向过程的思维来解决问题,巩固变量、运算符、if、switch、循环和方法的使用,让学生做出效果,把所学知识用于实战,提高学生的自信心。 | ||
数组 |
1)数组的创建与使用
2)一维数组与多维数组
3)数组的默认初始化与内存分析图
4)数组作为方法形参传递
5)数组的遍历操作
6)数组的常见算法分析
7)操作数组的工具类Arrays
8)理解main方法(args)
9)方法的可变参数详解
10)使用jar命令打*应用程序
11)数组数据结构的优势和劣势分析
12)常见的数组面试题讲解
|
1.掌握一维数组的使用和内存结构分析 2.掌握数组的遍历方式:普通for循环和for-each循环 3.掌握数组的添加、插入、删除和扩容操作 4.掌握数组的常见算法:冒泡排序、插入排序和二分法查找等 5.掌握Arrays工具类提供的常见方法 6.了解main方法实参传递和方法的可变参数使用 7.掌握二维数组的定义和内存结构分析 8.了解数组数据结构的优势和劣势 |
|
双色球项目 | 利用一维数组模拟双色球购买以及开奖的一系列过程。目标:能够实现手选,机选双色球,根据开奖结果比对所选的双色球号码,作为中奖的条件,来实现双色球项目。需要重点掌握数组的添加、删除和扩容操作,以及控制语句的逻辑思维。 | ||
面向对象编程(基础) |
1)面向过程和面向对象区别
2)类和对象的概述
3)类的属性和方法
4)构造方法(Construtor)
5)创建对象内存分析
6)DataType数据类型传递
7)this关键字详解
8)static关键字详解
9)局部代码块、构造代码块和静态代码块10)package和import详解 11)Eclipse中的debug调试 |
1.了解面向对象和面向过程编程思想的区别 2.了解类和对象的概念,以及两者之间的关系 3.掌握构造方法的语法、特点及构造方法重载 4.掌握对象的创建过程和内存分析 5.掌握成员变量和局部变量区别 6.掌握基本数据类型传递和引用数据类型传递的区别 7.掌握this的本质,掌握static修饰属性和方法的作用 8.掌握局部代码块、构造代码块和静态代码块的的执行和作用 9.了解*的概念及好处,了解导*的概念 |
|
图书管理系统 | 本项目模拟实现一个基于控制台界面的《图书管理系统》,目标:能够通过对图书以及用户的操作,实现用户管理以及图书管理。使用对象数组类存储数据,需要重点掌握类与对象的关系,以及类中各个方法的调用,逐渐建立起一个面向对象的思想,为后面的面向对象知识打好基础。 | ||
面向对象编程(进阶) |
1)面向对象的三大特性
2)面向对象之--封装(Encapsulation)
3)访问权限修饰符
4)set和get方法
5)JavaDoc生成API文档
6)面向对象之--继承(Inheritance)
7)方法重写Override
8)super关键字详解
9)继承中对象创建的内存分析
10)final关键字详解
11)Object类详解
12)面向对象之--多态(Polymorphism)
13)向上转型和向下转型
14)instanceof运算符
15)编译时和运行时详解
16)抽象类和抽象方法(abstract)
17)接口的定义和实现
18)接口和抽象类的区别
19)接口应用:内部比较器Comparable
20)接口应用:外部比较器Comparator
21)内部类详解
22)Java的内存管理与垃圾回收
|
1.了解封装的好处和javaBean的规范,掌握四种访问权限 2.掌握通过Eclipse中的JavaDoc生成API文档 3.了解继承的好处,掌握继承的实现和使用的要点 4.掌握重写的意义和规范,区分重写和重载 5.了解继承和组合所表述的关系,合理的使用继承和组合 6.掌握继承体系下对象的创建过程和内存分析 7.掌握super关键字的使用,以及super和this的区别 8.掌握final关键字的使用和Object类中的常见方法 9.掌握多态的原理、发生多态的条件和多态的使用场合 10.掌握向下转型和向上转型,以及instanceof运算符的使用 11.掌握抽象类和抽象方法的特点和使用 12.掌握接口的定义和实现,以及接口和抽象类的区别 13.了解面向接口编程思想,掌握比较器的运用 14.了解内部类的定义和特点 15.了解java的内存管理和垃圾回收机制 |
|
七彩鲜花销售系统 | 使用面向对象的思维方式,实现对鲜花的展示和销售功能。首先模拟实现一个ArrayList容器,用于存储库存中的鲜花和购物车中的鲜花,然后完成功能面板的展示及功能选择(添加购物车功能、查询订单的功能、修改订单的功能和删除订单的功能)。所用技能:面向对象的封装、继承、多态和接口,灵活的使用构造方法和静态方法。 | ||
异常机制 |
1)异常的概述
2)异常的继承体系
3)Error错误类
4)运行时异常和编译异常
5)异常的原理分析
6)try-catch-finally捕捉异常
7)throw抛出异常
8)throws声明异常
9)自定义异常
10)异常链
|
1.了解异常的结构体系和分类(Error和Exception) 2.了解Error错误类,以及常见的Error错误 3.掌握Exception分类:运行时异常和编译时异常 4.掌握异常的产生过程原理和throw抛出异常 5.掌握异常的两种处理方式:声明异常和捕捉异常 6.掌握自定义异常类的定义和使用 7.了解异常链的定义和使用 |
|
Java常用类 |
1)Wrapper*装类
2)自动装箱和自动拆箱
3)*装类的缓存分析
4)字符串处理类
5)java.lang.String类的使用与内存原理
6)String类的算法分析
7)StringBuffer与StringBuilder
8)字符串处理类性能分析
9)新日期API
10)java.lang.System类
9)java.util.Date类
10)java.text.SimpleDateFormat类
11)java.util.Calendar类
12)java.lang.Math类
13)BigInteger类和BigDecimal类
14)常见的面试题讲解与分析
|
1.掌握java的八种基本数据类型的*装类 2.掌握其他的一些常用的类,尤其是String类的方法 3.掌握Stringbuffer和StringBuilder的常用方法 4.掌握Stringbuffer和Stringbuilder的区别和联系 5.掌握日期类和字符串类的转换方式 6.掌握日期和日历类的转换方式 7.了解数学类好系统类的基本用法 8.了解BigInteger类和BigDecimal类的基本用法 |
|
开发人员调度项目 | 模拟实现一个基于文本界面的《开发人员调度软件》熟悉Java面向对象的高级特性,进一步掌握编程技巧和调试技巧,根据菜单提示,基于现有的公司成员,组建一个开发团队以开发一个新的项目,组建过程*括将成员插入到团队中,或从团队中删除某成员,还可以列出团队中现在成员的列表,需要掌握的知识点:类的继承和多态 对象的关联、特殊类的使用enum,以及异常。最终运行代码,实现效果 | ||
集合(容器) |
1)集合和数组的联系和区别
2)Collection框架(Set接口&List接口)
3)java.util.ArrayList源码与数据结构分析
4)java.util.LinkedList源码分析
5)java.util.HashSet内部原理
6)java.util.TreeSet数据结构分析
7)java7中Map系列集合与数据结构分析
8)Iterator与ListIterator讲解
9)java.util.Collections工具类
10)集合中使用泛型
11)自定义泛型
12)泛型通配符
13)ArrayList、LinkedList、Vector的区别和联系14)HashMap和Hashtable的区别和联系 15)使用集合实现商品和购物车 16)集合选择依据 |
1.了解容器的概念和体系结构 2.掌握Collection接口的基本用法 3.掌握List接口以及List接口子类的底层数据结构 4.掌握Set接口以及Set接口子类的的底层数据结构 5.掌握Map接口的基本用法 6.掌握HashMap的基本用法以及底层数据结构 7.掌握TreeMap的基本用法以及底层数据结构 8.掌握数组、链表、哈希表和二叉树的优缺点 9.掌握Iterator迭代器的迭代过程 10.掌握泛型在集合中的用法 11.掌握集合在实际开发中的选择依据 |
|
京东商城项目 | 本项目基于java控制台来模拟实现京东商城购物系统。重点掌握集合的基本操作,例如,对商品的添加、修改、删除、以及查询。逐渐让学生能够建立起一套比较完善的项目体系架构,再将这些具体的操作融入到面向对象的思想中,结合接口编程,形成分层模块的雏形。最终运行代码,展示效果。 | ||
IO流 |
1)IO流的概念
2)IO流的分类及其原理分析
3)文件流InputStream、OutputStream
6)打印流PrintWriter
9)序列化和反序列化
11)Properties读写属性文件
12)编码和解码
13)使用IO流复制文件夹
14)使用IO完成商品的添加和查询
15)文件的切割和合并
|
1.了解IO流的概念以及底层原理分析 2.掌握字节流和字符流的具体用法 3.掌握对象序列化和反序列化的实现和原理 4.了解其它IO流的基本用法 5.掌握流对于数据的编码和解码的过程 6.掌握通过IO流实现对文件的拷贝 7.掌握文件存取过程中的编码和解码问题 8.掌握Properties类对文件的读写操作 9.了解文件的切割和合并的原理 |
|
超市会员管理系统 | 本项目基于java控制台来模拟实现超市会员管理系统。重点掌握对超市会员的基本管理,例如:对会员的增删改查操作,最后再将Java中的这些对象数据保存在文件中,来实现对数据的持久化,提前让学生感受数据持久化对项目带来的好处,最后运行代码,展示效果。 | ||
多线程 |
1)线程的原理
2)线程的创建与启动
3)创建线程的几种方式对比
4)线程控制
5)线程的调度
6)线程的优先级
7)线程的生命周期
8)多线程的安全问题与解决办法
9)线程的同步
10)互斥锁
11)线程的死锁问题
12)线程通信
|
1.掌握多线程2种创建方式 2.掌握多线程的基本调度方法 3.掌握多线程的优先级 4.掌握多线程的声明周期 5.掌握同步的几种实现方式 6.了解死锁的概念 7.掌握线程同步在实际开发中的用途 8.掌握线程通信中的wait以及notify |
|
网络编程 |
1)网络编程基础知识
2)网络编程的三要素
3)如何实现网络中主机的相互通讯
4)OSI参考模型
5)TCP/IP参考模型(或TCP/IP协议)
6)数据的封装与拆封原理解析
7)TCP协议与UDP协议
8)基于TCP协议的网络编程
9)Socket的TCP编程
10)基于UDP协议的网络编程
11)基于UDP编程的聊天室系统
12)基于TCP编程的登录响应系统
|
1.了解网络编程基础知识 2.掌握网络编程三要素ip+端口+协议利用 3.了解OSI的七层参考模型 4.掌握数据的封装金额拆分原理 5.掌握UDP协议,做一个局域网的聊天室 6.掌握TCP协议,写出服务器客户端的上传和下载功能 |
|
聊天室系统 | 本项目基于多线程以及网络编程来模拟实现QQ聊天系统。重点掌握多线程的调度,以及网络编程对不同客户的基本操作。实现客户发出请求,服务器给出响应的双向操作,让学生能够对后面的Web项目有一个初步的了解。最终运行代码,实现用户之间的及时通信! | ||
XML&正则表达式 |
1)XML定义和概述
2)XML特点和优势
3)XML验证和DTD验证
4)使用DOM解析XML
5)使用DOM4j解析XML
6)了解正则表达式的使用
7)熟悉正则表达式的规则
8)使用Java处理正则
|
1.熟练的写出XML文件中的内容 2.了解DOM解析的概念 3.掌握通过DOM4J来解析XML文件 4.了解正则的规则 5.掌握Java处理正则和String中使用正则 |
|
反射技术 |
1)Java反射机制的研究与应用
2)反射的原理分析
3)JVM与类
4)类的加载、连接、初始化
5)类加载机制
6)开启反射的源头Class
7)获取Class实例的几种方式比较
8)从Class中获取类的结构信息
9)获取Constructor、Field和Method
10)泛型和Class类
|
1.了解反射的运行原理以及概念 2.掌握Class类对象的实现方式 3.掌握Class类的常用方法 4.掌握Constructor、Method、Field类的用法 5.了解泛型在反射中的用途 6.掌握模拟反射实现Servlet的基本过程 |
|
设计模式 |
1)创建型模式(共五种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式 2)结构型模式(共七种):适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式 3)行为型模式(共十一种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式 |
1.了解设计模式在实际开发中的应用思想 2.掌握工厂模式、适配器模式、单例模式、装饰者模式等 |