# java_training **Repository Path**: jianxinliu/java_training ## Basic Information - **Project Name**: java_training - **Description**: something practice about java - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-01-28 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # something practice package explain: - package **pattern** is something about design pattern,i implements some examples for better comprehension. ``` ├── pattern │   ├── factory │   │   ├── shanghaiTofuTypes.properties │   │   ├── store │   │   │   ├── AbstractTofuStore.java │   │   │   ├── ShanghaiTofuStore.java │   │   │   ├── Store.java │   │   │   └── TofuStore.java │   │   ├── tofu │   │   │   ├── HardTofu.java │   │   │   ├── SoftTofu.java │   │   │   ├── SweetTofu.java │   │   │   └── Tofu.java │   │   ├── TofuFactory.java │   │   ├── TofuTest.java │   │   ├── TofuTypes.properties │   │   └── util │   │   └── Util.java │   ├── observer │   │   ├── Center.java │   │   ├── Observerable.java │   │   ├── Observer.java │   │   ├── ObserverTest.java │   │   ├── pubsub │   │   │   ├── Publisher.java │   │   │   ├── PubSubTest.java │   │   │   └── SubScriber.java │   │   └── Subject.java │   ├── singleton │   │   ├── SingletonEnum.java │   │   ├── SingletonTest.java │   │   └── Sun.java │   └── strategy (also include command pattern) │   ├── attack │   │   ├── IAttack1.java │   │   ├── IAttack2.java │   │   ├── IAttack3.java │   │   └── INormalAttack.java │   ├── command │   │   ├── Attack1.java │   │   ├── Attack2.java │   │   ├── Attack3.java │   │   ├── Command.java │   │   └── NormalAttack.java │   ├── CommandPanel.java (It is a command line game) │   ├── Role.java │   ├── roles │   │   ├── heros.properties │   │   ├── HerosUtil.java │   │   ├── libai │   │   │   ├── Base.java │   │   │   ├── LiBaiAttack1.java │   │   │   ├── LiBaiAttack2.java │   │   │   ├── LiBaiAttack3.java │   │   │   ├── LiBaiNormalAttack.java │   │   │   ├── NewLiBaiAttack3.java │   │   │   └── RoleLiBai.java │   │   └── luban (where to add another hero) │   └── RoleTest.java ``` - package **Thread** is something about concurrent,also some examples here. ``` Thread/ ├── Array.java ├── atomic │   └── Normal.java ├── communcation │   ├── Main.java │   ├── Pool.java │   ├── Thread1.java │   └── Thread2.java ├── Consumer.java ├── container │   └── Test.java ├── countdownlatch │   ├── CountDownLatchTest2.java │   └── CountDownLatchTest.java ├── cyclicbarrier │   ├── CyclicBarrierTest.java │   └── Seckill.java ├── lock │   ├── Account.java │   ├── Deposit.java │   ├── DepositWithdraw.java │   ├── Lock.java │   ├── Main.java │   ├── SimpleLock.java │   ├── Thread2.java │   ├── TwoThread.java │   └── Withdraw.java ├── Productor.java ├── semaphore │   ├── Bus.class │   ├── Bus.java │   ├── java.txt │   ├── JxSemaphore.java │   └── SemaphoreTest.java ├── singleton │   ├── lazyinit │   │   ├── SingletonLazy2.java │   │   ├── SingletonLazySync3.java │   │   ├── SingletonLazySyncDCL4.java │   │   └── SingletonSyncDCLVolatile5.java │   ├── Singleton1.java │   └── Test.java ├── ThreadTest2.java └── ThreadTest.java ``` package **io/nio** is something about nio,implements a simple HTTP Server,can access the request from browser. ``` nio/my/ ├── bean (server base bean) │   ├── HttpMethod.java │   ├── RequestBean.java │   ├── ResponseBean.java │   └── StatuCode.java ├── HttpClient.java (http client) ├── HttpServer.java (http server,can access the request from browser) ├── resource.txt └── Test.java ```