Java的代理模式例子
(1). 创建一个接口, 要代理的类和 代理类都将继承它
package stone;
public interface Image {
public void show();
}
(2). 创建要被代理的类:
package stone;
public class BigImage implements Image {
public BigImage() {
try {
Thread.sleep(3000); // 模拟大图片要用长时间来加载
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("loading big image ");
}
public void show() {
System.out.println("show image");
}
}
(3). 创建代理类
package stone;
public class TestProxy {
public static void main(String[] args) {
long start= System.currentTimeMillis();
Image image= new ImageProxy(null);
System.out.println("Load time:"+String.valueOf(System.currentTimeMillis()-start));
image.show();
System.out.println("Show time:"+String.valueOf(System.currentTimeMillis()-start));
}
}
(4). 运行测试类,测试代理模式:
package stone;
public class TestProxy {
public static void main(String[] args) {
long start= System.currentTimeMillis();
Image image= new ImageProxy(null);
System.out.println("Load time:"+String.valueOf(Syste
相关文档:
java虚拟机
但是,java虚拟机的建立需要针对不同的软硬件平台做专门的实现,既要考虑处理器的型号,也要考虑操作系统的种类。如下图所示,目前在SPARC结构、X86结构、MIPS和PPC等嵌入式处理芯片上、在UNIX、Linux、windows和部分实时操作系统上都有java虚拟机的实现。 ......
1. 简单、面向对象和为人所熟悉
java的简单首先体现在精简的系统上,力图用最小的系统实现足够多的功能;对硬件的要求不高,在小型的计算机上便可以良好的运行。和所有的新一代的程序设计语言一样,java也采用了面向对象技术并更加彻底,所有的java程序和applet程序均是对象,封装性实现了模块化和信息隐藏,继承性 ......
出现这个错误,搜索到1、修改eclipse.ini;2、添加环境变量JAVA_OPTS=-Xms64m -Xmx512m,3、在run configurations->program arguments增加Xms64m -Xmx512m,均无效。
最后解决办法,在与program arguments一墙之隔的VM arguments中添加Xms64m -Xmx512m搞定。 ......
1. 简单工厂:
(1). 创建输出(Output)接口
package stone;
public interface Output {
public int MAX_COUNT =10; // 最多可打印多少条记录
public void show(); ......