Skip to content

Java教程,包括多线程,泛型,反射,IO,容器类,注解

License

Notifications You must be signed in to change notification settings

byhieg/JavaTutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaTutorial内容说明

该Java教程是学习Java过程中对Java知识点进行梳理。每一个包中的代码都有一个ReadMe来说明该包代码的作用以及知识点。 src包里面是Java的源码,test包里面是针对源码的测试

Alt text

ThreadTutorial内容说明

在源码路径下cn.byhieg.threadtutorial中放置的是Java多线程的代码和测试例子,在每一个章的包下,都有一个ReadMe来说明该章的知识点。

在char01包里放置Java多线程基本知识的代码。内容如下:

  1. 如何使用多线程
  2. 如何得到多线程的一些信息
  3. 如何停止线程
  4. 如何暂停线程
  5. 线程的一些其他用法

在char02包里放置了Java对变量和对象并发访问的知识的代码。内容如下:

  1. 对于方法的同步处理
  2. 对于语句块的同步处理
  3. 对类加锁的同步处理
  4. 保证可见性的关键字——volatile

在char03包里放置了Java线程间通信的知识的代码。内容如下:

  1. 等待/通知机制
  2. join方法的使用

在char04包里放置了Java中Lock类的知识的代码,内容如下:

  1. Lock类
  2. Lock类其他功能
  3. Condition类
  4. Condition类其他功能
  5. 读写锁

在char05包里放置了生产者/消费者的知识的代码,内容如下:

  1. 一对一 生产者/消费者
  2. 一对多 生产者/消费者
  3. 多对多 生产者/消费者

ReflectionTutorial内容说明

在源码路径下cn.byhieg.reflectiontutorial中放置的是Java反射的代码和测试例子,在每一个章的包下,都有一个ReadMe来说明该章的知识点。 在包下面,不细分包,整个教程的讲解内容如下: Java通过反射获取如下内容:

  • Class对象
  • 构造器
  • 变量
  • 方法
  • 私有变量与私有方法
  • 注解
  • 泛型
  • 数组

CollectionTutorial内容说明

在源码路径下cn.byhieg.collectiontutorial中放置的是Java集合类的代码和测试例子。在每一个包里面,都有一个ReadMe来说明该章的知识点。 ListTutorial中的知识点有

  • ArrayList的使用
  • 实现一个简单的ArrayList

MapTutorial中的知识点有

  • HashMap的使用
  • TreeMap的使用
  • LinkedHashMap的使用

AnnotationTutorial内容说明

在源码路径下cn.byhieg.annotationtutorial中放置的是Java注解类的代码和测试例子。在每一个包里面,都有一个ReadMe来说明该章的知识点。

IOTutorial内容说明

在源码路径下cn.byhieg.iotutorial中放置的是Java io类的代码和测试例子。在每一个包里面,都有一个ReadMe来说明该章的知识点。

DesignPattern内容说明

在源码路径下cn.byhieg.designpatterntutorial中放置的是Java 设计模式的代码和测试的例子。目前有

  • 代理模式
  • 单例模式
  • builder模式

algorithmtutorial内容说明

在源码路径下cn.byhieg.algorithmtutorial中放置的是Java实现的一些算法,内容如下:

  • 二叉搜索树
  • 二叉树的常见的算法
  • 查找算法,
  • 图的算法(DFS,BFS,Dijkstra)
  • 单链表的算法
  • 排序算法。

About

Java教程,包括多线程,泛型,反射,IO,容器类,注解

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages