![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
J2SE
tony168hongweigan
这个作者很懒,什么都没留下…
展开
-
线程池实例
package com.qing.core.utils;import java.util.concurrent.Callable;import java.util.concurrent.Future;import java.util.concurrent.LinkedBlockingDeque;import java.util.concurrent.ThreadPoolExecutor;import java.util.concurrent.TimeUnit;/**** 线程池工具...原创 2020-12-01 11:10:22 · 142 阅读 · 0 评论 -
NIO2实例
/** * */package zngz.server;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.io.RandomAccessFile;import java.io.Rea原创 2013-01-28 09:58:54 · 437 阅读 · 0 评论 -
NIO2中异步通道、线程池知识点
概述:异步通道 API 提供两种对已启动异步操作的监测与控制机制:一:第一种是通过返回一个 java.util.concurrent.Future 对象来实现,它将会建模一个挂起操作,并可用于查询其状态以及获取结果。第一个返回java.util.concurrent.Future,代表等待结果,你可以使用Future特性等待I/O操作结束; 二:第二种是通过传递给操作一个新类的原创 2013-01-28 10:01:20 · 641 阅读 · 0 评论 -
IO流系列(一)
1:给String字符串转编码 String str = "Jackson's bike-bell cost $5";String str2 = URLEncoder.encode(str,"UTF-8"); 2:读取流BufferedReader br = new BufferedReader(new InputStreamReader(System.in));原创 2013-01-23 09:28:17 · 260 阅读 · 0 评论 -
IO流系列(二)
一:File类1:创建文件File file =new File("D:\\file1\\file.txt");file.createNewFile();分隔符file.separator()2:删除文件file.delete();3:判断文件是否存在if(file.exists)4:文件类型file.isFile或file.isDirectory是否为文件原创 2013-01-23 09:34:26 · 341 阅读 · 0 评论 -
IO流系列(三)
一:使用StringWriter和StringReader可使用相应的StringReader类型从字符数据流中读取信息,可以看到,实现方法和相关的StreamReader类型差不多。其实,StringReader类只不过是通过重写派生的成员来从一段字符数据而不是从一个文件中读取信息,代码如下://创建一个StringWriter并把字符写入内存StringWriter strWr原创 2013-01-23 09:51:26 · 329 阅读 · 0 评论 -
synchronized锁机制原理
目前在Java中存在两种锁机制:synchronized和Lock,Lock接口及其实现类是JDK5增加的内容,其作者是大名鼎鼎的并发专家Doug Lea。本文并不比较synchronized与Lock孰优孰劣,只是介绍二者的实现原理。数据同步需要依赖锁,那锁的同步又依赖谁?synchronized给出的答案是在软件层面依赖JVM,而Lock给出的方案是在硬件层面依赖特殊的CPU指令,大家原创 2013-01-28 09:57:35 · 466 阅读 · 0 评论 -
NIO2系列二——Buffer
一:Buffer概念 可以理解为载体。 操作有如下:1:存取 get/put2:填充 put3:翻转 -----有flip()/Rewind()函数4:释放 ----clear()5:压缩-------compact函数6:标记Mark 标记Mark调用flip/Rewind/clear方法后,会抛弃标记位置;7:比原创 2013-01-23 10:30:42 · 725 阅读 · 0 评论 -
多线程系列(一)
获取当前线程的名称有以下方法:Thread.currentThread().getName();可以通过setName()对线程进行定义名称,通过getName()来获取名称;或者可以通过再构造函数中调用super(name)来获取定义好的线程名称;线程都有自己的默认名称,一般是Thread 加编号,编号一般从0开始;二: 售票程序例子,多个窗口买票class Tiket ex原创 2013-01-23 10:46:03 · 357 阅读 · 0 评论 -
多线程系列(二)
一:写一个煤矿例子,一个线程运煤,一个拉煤;day12-02-多线程(线程间通信-解决安全问题)class Res{private String name;private String sex;}class Input implements Runnable{ Res r; public Input(Res r){ this.r = r; }原创 2013-01-23 10:46:55 · 328 阅读 · 0 评论 -
异常框架处理步骤
1:/src/main/resources下建立message\business_exception_message.properties文件,内容为key=value2:编写读取properties文件的异常子类,通过Properties和静态代码块来获取信息,并load到Properties中去;class BusinessException extends RuntimeExcept原创 2013-01-23 10:51:07 · 300 阅读 · 0 评论 -
网络编程列表
一:网络编程概述:Socket客户端和服务端:Socket客户端中存在两个流,输入流和输出流/InputStream和OutputStream,如果客户端通过输出流中赋值,跟服务端连接后,服务端获取客户端中的Socket流中的输出流通过InputStream流来获取,并打印控制台或做一些相应逻辑,最终关闭客户端socket对象,服务端可以关闭,也可以不关闭;第一节: 网络编程(概述)原创 2013-01-23 10:53:17 · 316 阅读 · 0 评论 -
NIO2实例
/** * */package zngz.server;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.io.RandomAccessFile;import java.io.Rea原创 2013-01-23 10:55:19 · 339 阅读 · 0 评论 -
反射、动态代理原理
Java的反射机制的实现要借助于4个类:class,Constructor,Field,Method;Reflection 是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审”,并能直接操作程序的内部属性。三个步骤:一、通过Class类获取成员变量、成员方法、接口、超类、构造方法等1:第一步是获得你想操作的类的 java.lang.Cl原创 2013-01-23 10:49:39 · 186 阅读 · 0 评论 -
集合小知识
一:Collection接口集合框架的根通用方法 boolean contains(Object a) boolean equals(Object a) Iterator iterator() int size() void clear() boolean add(Object a)二:Set接口扩展Collection接口不允许重复元素对原创 2013-01-23 10:54:17 · 198 阅读 · 0 评论 -
泛型设计技巧
public interface Monitor extends Runnable { void setMonitorTarget(T target);}public void setSessionMonitor(Monitor> sessionMonitor) { this.sessionMonitor = sessionMonitor;}这里T被解析成Map原创 2013-01-23 10:50:21 · 274 阅读 · 0 评论 -
网络编程socket实例
客户端:class TrancClient{ Socket socketClient = new Socket("192.168.1.1",10005); BufferedReader bufr = BufferedReader(new InputStreamReader(System.in)); BufferedWriter bufO= BufferedWriter(new原创 2013-01-23 10:52:27 · 429 阅读 · 0 评论 -
AsynchronousServerSocketChannel系列
一:异步套接字通道1:设置服务器1.1:打开 AsychronousServerSocketChannel 并将其绑定到类似于 ServerSocketChannel 的地址AsynchronousServerSocketChannel server = AsynchronousServerSocketChannel.open().bind(null);方法 bind()原创 2013-01-23 10:14:53 · 5047 阅读 · 0 评论