内部类和匿名内部类

 
new 父类构造器(参数列表)|实现接口(){
                                             //匿名内部类的类体实现
                                        }

使用内部类的作用:

高内聚,把只和这个类相关的类型放到这个类内部是很合理的,如果把它放在外面,那么两个类就成了耦合关系。

比如

public class LinkedList<T> {
    class Node {
        T data;
        Node prev;
        Node next;
    }

    Node fst;
    Node lst;
}

 

class LinkedListNode<T> {
    T data;
    LinkedListNode<T> prev;
    LinkedListNode<T> next;
}

public class LinkedList<T> {
    LinkedListNode<T> fst;
    LinkedListNode<T> lst;
}  

匿名内部类实现规定:

  1. 使用匿名内部类时,必须继承一个类或实现一个接口
  2. 匿名内部类由于没有名字,因此不能定义构造函数
  3. 匿名内部类中不能含有静态成员变量和静态方法
posted on 2018-03-22 10:28  火影不火  阅读(157)  评论(0编辑  收藏  举报