妖碧落

导航

2019年8月15日 #

模板设计模式

摘要: 定义一个算法的骨架,而降具体的算法延迟到子类去完成 ① 抽象类, ② final 骨架方法 ③ abstract 测 试方法 让子类去完成 阅读全文

posted @ 2019-08-15 21:30 妖碧落 阅读(82) 评论(0) 推荐(0) 编辑

动态代理

摘要: 在java中 java.lang.reflect包下提供了一个proxy类 和 一个 InvocationHandle接口 InvocationHandle 接口 的作用是生成动态代理对象 JDK 提供的代理只能针对接口做代理 proxy 中有一个方法 newProxyInstance() : 这个 阅读全文

posted @ 2019-08-15 21:16 妖碧落 阅读(103) 评论(0) 推荐(0) 编辑

反射应用--修改属性值

摘要: public class test3 { /* * public void setProperity(object obj,String name, object value) * 此方法可将obj对象中的名为properityName的属性值 改为 value */ public static void main(String[] args... 阅读全文

posted @ 2019-08-15 19:04 妖碧落 阅读(169) 评论(0) 推荐(0) 编辑

通过反射绕过泛型

摘要: import java.lang.reflect.Method; import java.util.ArrayList; public class test1 { // 泛型只在编译期有效, 在编译之后通过字节码文件,添加元素 不受泛型限制 public static void main(String[] args) throws Exception { A... 阅读全文

posted @ 2019-08-15 18:59 妖碧落 阅读(287) 评论(0) 推荐(0) 编辑

java反射

摘要: 反射机制: 在运行状态中 对于任意一个类,都能够知道这个类的所有的属性和方法 获取class 的三种方式: 1、 Class clazz1 = Class.forName("com.heima.bean.Person"); // Class 的静态方法 通过全类名 获取运行类 2、 Class cl 阅读全文

posted @ 2019-08-15 18:57 妖碧落 阅读(143) 评论(0) 推荐(0) 编辑

网络编程练习

摘要: public class test1_server { /* * 网络编程(练习) * 客户端向服务器写字符串(键盘录入),服务器(多线程)将字符串反转后写回,客户端再次读取到是反转后的字符串 */ public static void main(String[] args) throws IOException { ServerSocket server = new ServerSocket(5 阅读全文

posted @ 2019-08-15 14:59 妖碧落 阅读(232) 评论(0) 推荐(0) 编辑

TCP编程

摘要: 代码优化 阅读全文

posted @ 2019-08-15 14:53 妖碧落 阅读(135) 评论(0) 推荐(0) 编辑

GUI 聊天界面

摘要: import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.Event; import java.awt.Font; import java.awt.Frame; import java.awt.HeadlessException; import java.awt.Pane 阅读全文

posted @ 2019-08-15 14:38 妖碧落 阅读(350) 评论(0) 推荐(0) 编辑

UDP传输多线程

摘要: 发送和接收在一个窗口完成 public class Demo3_MoreThread { /** * @param args */ public static void main(String[] args) { new Receive().start(); new Send().start(); } } class Receive extends Thread { public void run 阅读全文

posted @ 2019-08-15 14:35 妖碧落 阅读(746) 评论(0) 推荐(0) 编辑

网络编程(UDP传输)

摘要: UDP * 面向无连接,数据不安全,速度快。不区分客户端与服务端。 TCP * 面向连接(三次握手),数据安全,速度略低。分为客户端和服务端。 * 三次握手: 客户端先向服务端发起请求, 服务端响应请求, 传输数据 阅读全文

posted @ 2019-08-15 14:34 妖碧落 阅读(316) 评论(0) 推荐(0) 编辑

GUI窗体监听---适配器模式

摘要: GUI(布局管理器) * FlowLayout(流式布局管理器) * 从左到右的顺序排列。 * Panel默认的布局管理器。 * BorderLayout(边界布局管理器) * 东,南,西,北,中 * Frame默认的布局管理器。 * GridLayout(网格布局管理器) * 规则的矩阵 * CardLayout(卡片布局管理器) * 选项卡 * GridBagLayout(网格包布局管理器) 阅读全文

posted @ 2019-08-15 13:55 妖碧落 阅读(250) 评论(0) 推荐(0) 编辑

简单工厂设计模式

摘要: * A:简单工厂模式概述 * 又叫静态工厂方法模式,它定义一个具体的工厂类负责创建一些类的实例 * B:优点 * 客户端不需要在负责对象的创建,从而明确了各个类的职责 * C:缺点 * 这个静态工厂类负责所有对象的创建,如果有新的对象增加,或者某些对象的创建方式不同,就需要不断的修改工厂类,不利于后期的维护 * D:案例演示 * 动物抽象类:public abstract Animal { pub 阅读全文

posted @ 2019-08-15 13:36 妖碧落 阅读(140) 评论(0) 推荐(0) 编辑

线程组

摘要: Java中使用ThreadGroup来表示线程组,它可以对一批线程进行分类管理,Java允许程序直接对线程组进行控制。 默认情况下,所有的线程都属于主线程组。 * public final ThreadGroup getThreadGroup() //通过线程对象获取他所属于的组 * public 阅读全文

posted @ 2019-08-15 13:26 妖碧落 阅读(141) 评论(0) 推荐(0) 编辑

多线程--两个线程间的通讯

摘要: CPU任意切换线程,如果希望 CPU能够有规律的执行,就需要线程间通讯: this.wait() 当前线程等待 this.notify() 随机唤醒单个线程 this.notifyAll() 唤醒所有线程 // 为什么定义在object中,因为任意对象都可以成为锁 JDK5之前无法唤醒指定的一个线程 阅读全文

posted @ 2019-08-15 12:48 妖碧落 阅读(825) 评论(0) 推荐(0) 编辑

单例模式应用-- Timer 计时器

摘要: Timer :计时器 一种工具: 线程用其安排以后再后台线程中执行的任务,可执行一次,也可执行多次 其中的方法: schedule(TimeTask task , Date date) 只执行一次 schedule(TimeTask task , Date date, time) 每隔多少时间 执行 阅读全文

posted @ 2019-08-15 00:04 妖碧落 阅读(964) 评论(0) 推荐(0) 编辑