第9章类的高级特性内容摘要:

public void eat() { (eat something)。 } }。 ()。 } } 【 匿名内部类例 1】 abstract class Bird { private String name。 public String getName() { return name。 } public void setName(String name) { = name。 } public abstract int fly()。 } 【 匿名内部类例 2】 public class Test { public void test(Bird bird){ (() + ())。 } public static void main(String[] args) { Test test = new Test()。 (new Bird() { public int fly() { return 10000。 } public String getName() { return 大雁。 } })。 } } 【 匿名内部类例 2】 静态内部类  在内部类前添加修饰符 static,这个内部类就变为静态内部类。  一个静态内部类中可以声明 static成员,但是在非静态内部类中不可以声明静态成员。  静态内部类不可以使用外部类的非静态成员。 静态内部类  静态内部类具有以下两个特点: 创建静态内部类的对象,不需要其外部类的对象。 不能从静态内部类的对象中访问非静态外部类的对象。 静态内部类 【 例 96】 在静态内部类中定义 main()方法,并访问内部类中的方法。 public class StaticInnerClassDemo { static int x = 100。 static class Inner { static void doitInner() { (外部类的成员变量 + x)。 } public static void main(String args[]){ doitInner()。 // 访问内部类的方法 } } } 补充:泛型  泛型是将 不同类型对象的同一种操作 加以抽象、封装,使其享有更广泛的代码重用性。  在 ,没有泛型的情况的下,通过对类型 Object的引用来实现参数的“任意化”,其缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。 对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。 public class ArrayList { private Object[] element。 … public Object get(int index) {return element[index]。 } public void add(Object obj){…} } ArrayList list=new ArrayList()。 (Hello)。 String str=(String)(0)。 //需要强制类型转换 Integer value=(Integer)(0)。 //不检查类型错误 补充:泛型  泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 这种参数类型可以用在类、接口和方法的创建中, Java语言引入泛型的好处是安全简单。  泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。 补充:泛型  声明包含泛型的类的格式如下: [访问修饰符 ] class 类名 泛型 1,泛型 2,…{ 泛型 1 泛型成员 1。 泛型 2 泛型成员 2。 //.... } 声明中的泛型 泛型 2等泛型符号可以是任意合法的 Java标识符。 补充:泛型-泛型类的声明示例 public class GenericT { private T f。 //f为泛型成员 public void setF(T f) { //参数类型为泛型 T = f。 } public T getF() { //返回类型为泛型 T return f。 } } 补充:泛型- 泛型类 的实例化 GenericBoolean f1 = new GenericBoolean()。 GenericInteger f2 = new GenericInteger()。 (new Boolean(true))。 Boolean b = ()。 (b)。 (new Integer(10))。 Integer i = ()。 (i)。 补充:泛型- 泛型类 的实例化  泛型类实例化时,并不一定要指明泛型对应的实际类型,此时会使用 Object作为泛型的默认类型  编译时编译器会发出警告。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。