Java基础-接口与内部类
潜水生活
这个作者很懒,什么都没留下…
展开
-
(一) 接口
接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义。接口中所有方法自动地属于pubilic。因此,在接口中声明方法时,不必提供关键字public。接口可能包含多个方法。接口中还可以定义常量。接口中不能含有属性,也不能在接口中实现方法。提供属性和方法实现的任务应该由实现接口的那个类来完成。为了让类实现一个接口,通常需要下面两个步骤:1)将类声明为实现给定的...原创 2012-03-18 19:19:51 · 106 阅读 · 0 评论 -
(三) 接口与回调
回调(callback)是一种常见的程序设计模式。在这种模式中,可以指出某个特定事件发生时应该采取的动作。DEMO:在java.swing包中有一个Timer类,可以使用它在到达给定的时间间隔时发出通告。如何告知定时器做什么?因为Java标准库中的类采用的是面向对象方法,将某个类的对象传递给定时器,定时器调用这个对象的方法。由于对象可以附带一些附加的信息,所以传递一个对象比传递一个...原创 2012-03-18 19:21:37 · 94 阅读 · 0 评论 -
(四) 内部类
内部类(inner class)是定义在另一个类中的类。使用内部类的主要原因:(1)内部类方法可以访问该类定义所在的作用域中的数据,包括私有的数据。(2)内部类可以对同一个包中的其它类隐藏起来。(3)当想要定义一个回调函数且不想编写大量代码时,使用匿名(anonymous)内部类比较便捷。1.使用内部类访问对象状态内部类既可以访问自身的属性,也可以访...原创 2012-03-18 19:27:00 · 143 阅读 · 0 评论 -
(二) 对象克隆
1.当拷贝一个变量时,原始变量与拷贝变量引用同一个对象,也就是说,改变一个变量所引用的对象将会对另一个变量产生影响。如果创建一个对象的新的copy,它的最初状态与拷贝对象一样,但以后可以各自改变各自的状态,那就需要clone方法。但clone方法是Object类的一个proteced方法,也就是说在用户编写的代码中不能直接调用它,只有类本身才能克隆类对象。Object类的实现Clone...原创 2012-03-18 23:44:30 · 87 阅读 · 0 评论 -
(五) 代理
代理(proxy),是Java SE 1.3新增加的特性。利用代理可以在运行时创建一个实现了一组给定接口的新类。这种功能只有编译时无法确定需要实现哪个接口时才有必要使用。使用场景:有一个表示接口的Class对象(有可能只包含一个接口),它的确切类型在编译时无法知道。要想构造一个实现这些接口的类,就需要使用newInstance方法或反射找出这个类的构造器。但是,不能实例化一...原创 2012-03-18 23:45:50 · 96 阅读 · 0 评论