- 浏览: 355790 次
- 性别:
- 来自: 沈阳
最新评论
-
sanrenxing_1:
GoEasy 实时推送支持IE6-IE11及大多数主流浏览器的 ...
极光推送(JPUSH)--- 消息推送 -
QuarterLifeForJava:
如果带有中文路径的话要写为:
URLDecoder.decod ...
获取类根路径及jar包路径 -
whyxy007:
请问楼主放上去的这张图就是最后需要安装的所有的包吗?还是说需要 ...
cordova 开发环境搭建
文章列表
generalization 泛化:A类扩展了B类,则A类与B类是扩展关系。
说明A类是B类所代表类型的一个分类,A类的职责在B类职责范围内或A类职责是对B类职责的扩展。
realization 实现:A类实现了接口B,则A类与B类是实现关系。
说明 B类声明了功能,A类是B类的具体实现。
dependency依赖:A类是B类的方法参数、局部变量或B类引用了A类的静态方法,则B类依赖A类。
...
类的设计原则:
如果将类比做office美女,那么她应该具有:
1.苗条的身材:臃肿不招人喜欢
2.明确的职责:只负责做XX事(没有职责就失去了存在的意义)
3.懒惰的情格:XX之外的事,我不管
4.谨慎的承诺:不轻意做出承诺,承诺超多干的越多
寻找有类似职责的干爹:
1.权势的干爹:找个类似职责的权势的干爹,能帮你做好多事,外系统的帮不上什么忙。
2.干爹的马甲:出门办事披上干爹的马甲,事好办。
3.干爹的要求:要尽量满足,实在满足不了的,可以对干爹声明能做到,真正做的时候抛出异常好了。
注意事项:
...
类的产生:
1.事物类:通过对问题领域内的某一类事物的分析,抽取其共同特征(主要是属性特征),而生成类,一般表述某一事物。
2.功能类:为了解决某一程序问题构造出来的类,该类提供了某些功能来解决问题。
类的实例:
事物类的实例,由于属性有不同的值,而表示不同的具体事物。 通常为N多例。
功能类的实例,一般为单例或几个实例。
继承:如一些类,具有大部分相同的属性特征或行为特征,将共同性抽取形成父类,子类自动继承了父类的属性特征和行为特征,
好处是:避免多个类重复的定义相同的属性及行为特征,这些特征自动的从共用的父类处继承而来。
...
对NIO进行封装,使其方便使用。
UML类图:
DatagramChannel
打开一个指定端口或随机端口,并可以接收任何发到本端口的数据报,也可以发送数据报到任何一个远程的地址。一个 DatagramChannel 即可以做为Server端(前提是Client端知道你的端口)也可以做为Client端,即 N对N的关系。
ServerSocketChannel
Socket通信中的服务端,打开一个指定的端口,可以接收多个Socket连接,如A主机发送Socket连接请求,连接成功后,生成SocketChannel ,该通道只能接收或发送数据到A主机。 ...
Eclipse 打可执行JAR包
- 博客分类:
- 其它
一. 不依赖第三方类库的可执行JAR
Eclipse 工程上右键->export 打开窗口中,选择java/jar file ->next->
1.选择打到jar包里的文件和src下的哪些类
2.在JAR file:录入生所的jar包名。(默认路径是当前工作台目录,与可以选择指定的目录)
->next->next : Main class 框中选择主执行类->finish 就可以生成jar包的。
二 依赖第三方类库的可执行JAR
如果代码的执行依赖第三方类库,就需要第三方类库的jar包在class ...
DatagramChannel
- 博客分类:
- JAVA-NIO
UDP 是User Datagram Protocol的简称,UDP进行通信,客户端与服务端不进行连接,只是使用数据报进行通信。
一个程序打开一个UDP端口,可以给任何远程主机的UDP端口发送数据报,也可以接收任何发送到本端口的数据报(前提是别 ...
Channel
API描述:用于 I/O 操作的连接。
通道表示到实体,如硬件设备、文件、网络套接字或可以执行一个或多个不同 I/O 操作(如读取或写入)的程序组件的开放的连接。
UDP 简易聊天程序示例
- 博客分类:
- JAVA-NIO
UDP发送接收数据类:
/**
* udp 数据报的发送和接收
* @author yanlei
*
*/
public class UDPPort implements Runnable{
private static Logger logger = Logger.getLogger(UDPPort.class);
/**
* 本地端口,未指定,则是随机端口
*/
int localPort = 0;
/**
* 接收缓冲区大小
*/
int bufferSize= 1024;
public int ...
FileChannel示例
- 博客分类:
- JAVA-NIO
FileChannel
public class TestFileChannel {
/**
* 复制文件
* @param srcfile
* @param destFile
* @throws IOException
*/
public void copyFile(File srcfile,File destFile ) throws IOException{
FileChannel srcfileChannel = new FileInputStream(srcfile).getChannel();
FileCh ...
ByteBuffer
- 博客分类:
- JAVA-NIO
NIO
Buffer 一种容器,可以写入和读取基本类型数据。
Buffer 内部一般是使用数组来实现。
Buffer 基本属性:
1.position:数组的下标,下一个读取或写入操作由此下标开始,写入或读取完成后 position会增加读取或写入数据的长度,即指向新的写入或读取位置。
2.limit :数组下标,指明该下标开始,以后的数组元素不可以读取或写入。
用途:如写入了10个数组元素,limit定为10,则读取操作不可以读取超过10个元素。
3.capacity: 数组的实际长度。可保存元素的最大个数。
4.mark: 通过调用ma ...
字节流,读取或写入byte 8位。
字符流,流取或写入char 16位。与字符集有关。
字节输入流 :InputStream
字节输出流:OutputStream
字符输入流:Reader
字符输出流:Writer
Class 类的实例表示正在运行的 Java 应用程序中的类和接口。枚举是一种类,注释是一种接口
通过Class 能够获取类的信息,调用类的方法等。
一 生成Class对象
static Class<?>
Class.forName(String className) className是类的全名
Class<?>
ClassLoader.loadClass(String name) name 是类的全名
ClassLoader来源:
1.Thread.currentThread().getContextClassLoader ...
Annotation 是一种注释,可以标注在类、方法、属性上,对其在另一个层面(一般在系统实现上)进行说明。
Annotation 的定义类似于接口:
@Retention(RetentionPolicy.RUNTIME)//指明该Annotation 在运行时存在,可通过对类反射获取标 ...
方法的参数及返回值一般是具体的某个类或某个接口。 (接口的好处是多态)。
当方法的参数或返回值是允许是多种不同的类型时,只能使用Object对象。
如:实例化某一个类:
public Object createJavaBean(Class classz) throws Exception{
return classz.newInstance();
}
//调用时需使用 Person person =(Person)createJavaBean(Person.class);
// Dog dog= (Dog)createJavaBean ...
调用操作系可执行的命令
- 博客分类:
- JAVA-基础
java 可以调用操作系统上可以执行的命令
调用方式一:
Process process = Runtime.getRuntime().exec(new String []{"ping","127.0.0.1" }, null,null);
.exec方法:
public Process exec(String cmdarray[], String[] envp, File dir)
参数: cmdarray 命令及参数组成的数组:可执行的命令字符串,用空格分隔而生成的数组
envp 每一个元素为一个环境变量 ...