Toolkit kit = Toolkit.getDefaultToolkit(); (1)
Dimension screenSize=kit.getScreenSize(); (2)
关于这两句有点疑问 我的理解是创建对象应该是Toolkit kit = new Toolkit();
这里第一句kit怎么变成了对象 这里是什么样得知识?
另外创建对象还有哪几种形式?
我表达得可能不清楚 望达人能解释一下
Dimension screenSize=kit.getScreenSize(); (2)
关于这两句有点疑问 我的理解是创建对象应该是Toolkit kit = new Toolkit();
这里第一句kit怎么变成了对象 这里是什么样得知识?
另外创建对象还有哪几种形式?
我表达得可能不清楚 望达人能解释一下
你现在看到的构建对象的方式其实是工厂模式,简单的说就是通过类的静态方法,返回自己的实例对象,因为这个类的构造器是private的,不能用new的方式创建。
建议LZ在研究图形界面前,先把Core Java的知识学学好!
还有就是无法显示的使用构造器的
就只有通过其他方法返回一个对象
Class.forName("");
findClass("");
loadClass("");
一种是用最常用的new关键字来创建对象,这个是最常用的方法。以上说的用工厂方法或者单利模式也是这个new关键字来创建对象。
还有一种方法是利用java虚拟机的反射机制来创建对象,也就是利用java.lang.reflaction包下的类来创建对象,这种方式非常便于扩展,在框架中常使用。
还有一种是反序列化创建对象,这种方式是利用流把保存在持久化存储器中的相关对象信息读取出来创建对象,他的前提是以前有过吧对象序列化的情况。序列化与反序列化的用途主要是节约宝贵的内存资源,EJB里面有所运用,其它不详。(不过要求实现序列化标记接口)
另外一种就是对象的克隆,利用克隆方法给对象产生副本,不过似乎要实现对象克隆接口,这个方法我至今没用过。
NEW
工厂
克隆
反射
但是要实现一些特殊功能,new就不够用了
比如需要实现一个单例模式的话,用new就无法做到单例了
所以单例的实现一般就是把构造函数申明成privite,然后用一个static的方法来获取类的实例
再有就是工厂模式的运用了比如单例:
class Test{
static Test instance = new Test();
public static Test getInstance(){
//todo somthing
return instance;
}
private Test(){
}
}
好像没别的了