内部类

来源:互联网 发布:搜番软件 编辑:程序博客网 时间:2024/06/05 05:58
     所谓内部类就是在一个内部再声明一个类,我们把外面的那个类叫做外部类,在外部类中定义的类叫做内部类;内部类大致分为两种,一种是成员内部类(在类的成员方法之外的类),第二种是局部内部类(在外部类的成员方法之中的类)。
1:成员内部类
     成员内部类相当于就是内部类的一个成员,也就是说,成员内部类可以用一下几种修饰符进行修饰:public,private,default,protected,abstract。可以把他理解为一个方法和类的结合体(毕竟他是在类中的嘛)。
     还有一点就是在内部类中,是可以直接调用外部类的方法或属性,如果在定义时内部类和外部类或者是方法中由重名的情况,那么就需要用到 this 关键字了
     它的具体实现如下
public class test2 {
 public static void main(String[] args){
        Brain P = new Brain();
        Brain.Skin b = P. new Skin();
        b. show("haha");
 }
}
class Brain{
       String name = "美女";
        class Skin{
       String name = "帅哥";
        public void show(String name)
       {
              System. out.println(name );//haha
              System. out.println(this .name );//帅哥
              System. out.println(Brain.this.name);//美女
       }
       }

}//haha
 //帅哥
 //美女

2:局部内部类
     局部内部类在JAVA中可以说用的算是比较少的了,所谓局部内部类是指在一个方法中去定义一个类,如下面的例子
Comparable getComparable(){
class MyComparable implements Comparable{

        @Override
        public int compareTo(Object o) {
               return 0;
       }
}
return new MyComparable ();
}

0 0
原创粉丝点击