java 模拟selector的附带功能
package com.event;
import java.util.Map;
public interface EventListener {
void onEvent(Map event);
}
package com.socket;
import java.nio.ByteBuffer;
import java.util.HashMap;
import com.event.EventListener;
/*
* 预处理类
*/
public class BaseObject {
private boolean flag;
private ByteBuffer receivebuffer= ByteBuffer.allocate(20000);
public void print(){
System.out.println("hello!");
flag=true;
}
public boolean isFlag() {
return flag;
}
public void setFlag(boolean flag) {
this.flag = flag;
}
public ByteBuffer getReceivebuffer() {
return receivebuffer;
}
public void invoke(EventListener event){
System.out.println("BaseObject invoke");
HashMap<String, String> map=new HashMap<String, String>();
map.put("key", "wellcome here");
event.onEvent(map);
}
}
package com.socket;
public class Client{
/*
* 对应的远程客户端
*/
public Client(){
}
public void run( ) {
System.out.println("client run");
}
}
package com.socket;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
public class Server {
private ServerSocketChannel channel;
private SocketController sc;
public Server() {
try {
sc = new SocketController();
sc.start();
channel = ServerSocketChannel.open();
channel.socket().bind(new InetSocketAddress(8080));
} catch (IOException e) {
e.printStackTrace();
}
}
private void start
相关文档:
甲骨文已经完成了对SUN公司的收购,于1月27日发布了对Sun各项业务的整合规划。总体上说,Oracle要成为软硬件一体化的整体解决方案的厂商。 以下就其对备受关注的Java方面的策略做个介绍。
Java SE:
1)推出JDK SE 7, 它将包括多个新的功能,如提高开发人员的效率,提供高性能,对多核芯片的支持等。
2)Sun的HotSp ......
inkfish翻译,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish
)。本文是我学习JUEL同时,对原网站进行的简单的翻译,原网站地址:http://juel.sourceforge.net/guide/basic/index.html
。
基本类(Basic Classes)
这一部分过一下JUEL提供的具体的一些类,这些类组成了计算过程的核心:它 ......
Java的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此,很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的表现与C++不同。
问题的提 ......
Java类中可以定义一个static块用于静态变量的初始化;当类的定义中不含有static块时,编译器会为该类提供一个默认的static块,前提
是存在静态变量的初始化操作;由于静态变量是通过赋值操作进行初始化的,因此可以通过静态函数返回值的方式为其初始化;类定义中可以存在多个static
块,而且在编译时编译器会将多个static ......
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class MyFrame extends JFrame {
/**
&nb ......