摘要:
反射加内省解决耦合问题 1 package com.gh.introspector; 2 /** 3 * JavaBean 4 * @author ganhang 5 * 6 */ 7 public class Dog { 8 private String name; 9 p... 阅读全文
摘要:
1 package com.gh.ref; 2 3 public class Person { 4 private String name; 5 private int age; 6 private char sex; 7 private void say(){ ... 阅读全文
摘要:
1 package com.gh.dynaproxy; 2 3 import java.lang.reflect.InvocationHandler; 4 import java.lang.reflect.Method; 5 /** 6 * 动态代理类 7 * @author ganhang... 阅读全文
摘要:
1 package com.gh.observer; 2 import java.util.Observable; 3 /** 4 * 被观察者对象 5 * 必须继承被观察者抽象类 6 * @author ganhang 7 * 8 */ 9 public class Doll exte... 阅读全文
摘要:
1 package com.gh.URL; 2 import java.io.BufferedInputStream; 3 import java.io.BufferedOutputStream; 4 import java.io.FileOutputStream; 5 import java.i... 阅读全文
摘要:
1 package com.gh.socket; 2 3 import java.io.BufferedReader; 4 import java.io.IOException; 5 import java.io.InputStreamReader; 6 import java.net.Sock... 阅读全文
摘要:
服务端的实现 1 package com.gh.echo; 2 import java.io.*; 3 import java.net.*; 4 /** 5 * echo服务器程序 6 * 实现 不断接收字符串 ,然后返回一个echo+字符串 7 * 服务程序写成多线程 8 * @autho... 阅读全文
摘要:
package com.gh.threadpoor;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;/** * 使用线程池 * @author ganhang * */public c... 阅读全文
摘要:
1 package com.gh.thread; 2 /** 3 * 生产者和消费者案例 4 * wait和sleep的区别 5 * wait不让出监视器锁,sleep让出监视器的锁 6 * @author ganhang 7 * 8 */ 9 /** 10 * 生... 阅读全文
摘要:
1 package com.gh.thread; 2 3 /** 4 * 线程实现的两种方法 5 * 1、继承thread类 6 * 2、实现Runnable接口 7 * @author ganhang 8 * 9 */10 public class ThreadDemo {1... 阅读全文
摘要:
装饰设计模式就是对已有的对象的功能进行增强当想要对已有的对象进行功能增强时,可以定义类,将已有对象传入,基于已有的功能,并提供加强功能。那么自定义的该类称为装饰类。装饰类通常会通过构造方法接收被装饰的对象。并基于被装饰的对象的功能,提供更强的功能。例如:你有个对象有个功能 是在N年前建立的,如今你觉... 阅读全文
摘要:
1 package om.gh.homework; 2 import java.io.*; 3 /** 4 * 实现分割文件; 5 * @param file 6 */ 7 public class HomeWork { 8 /** 9 * @param src10 ... 阅读全文
摘要:
//注意对象类要打标记实现Serializable接口 1 package com.gh; 2 3 import java.io.FileInputStream; 4 import java.io.FileNotFoundException; 5 import java.io.FileOutput... 阅读全文
摘要:
1 package com.io; 2 import java.io.*; 3 import java.text.SimpleDateFormat; 4 import java.util.Date; 5 /** 6 * 文件复制的实现 7 * @author ganhang 8 * 9 ... 阅读全文
摘要:
1 package com.io; 2 3 import java.io.File; 4 import java.io.FileInputStream; 5 import java.io.FileNotFoundException; 6 import java.io.IOException; 7... 阅读全文
摘要:
1 package com.io; 2 3 import java.io.*; 4 /** 5 * 文件字符流的读取 6 * @author ganhang 7 * 8 */ 9 public class FileReaderDemo {10 public static void... 阅读全文
摘要:
字节流分为FileInputStream 和FileOutputStream 1 package com.io; 2 3 import java.io.File; 4 import java.io.FileInputStream; 5 import java.io.FileNotFoundExce... 阅读全文
摘要:
二叉树是一种数据结构,每个节点都有两个子节点。二叉树的遍历有三种方式,先序遍历是 根节点,左子树,右子树;中序遍历是 左子树,根节点,右子树;后序遍历是 左子树,右子树,根节点;java实现: 1 package com.gh.Binary; 2 3 /** 4 * 二叉树的实现 5 * 6... 阅读全文
摘要:
数据结构学了,java实现下package com.gh.Link;/** * 链表的实现 * @author ganhang * */public class Links { public static void main(String[] args) { NodeManage... 阅读全文
摘要:
之前学了File便想把我学习视频的名字改了,因为文件名太长不好看,便试着写了个功能实现 1 package com.gh.file; 2 3 import java.io.File; 4 5 /** 6 * 批量文件命名 7 * 8 * @author ganhang 9 * 10 ... 阅读全文