面向对象编程7

内部类

1、成员内部类

2、静态内部类

3、局部内部类

4、匿名内部类

package javaSE.oop.Demo10;
​
public class Outer {
   private int id = 10;
   public void out(){
       System.out.println("外部类的方法");
  }
​
   public  class Inner {
       public void in(){
           System.out.println("这是内部类的方法");
      }
​
       public void getID(){
           //内部类可以获得外部类的私有属性
           System.out.println(id);
      }
  }
}
​
//一个java类中可以有多个class类,但只能有一个public class
class A{
​
   public void B(){
       class Inner{}//局部内部类
  }
​
}
package javaSE.oop;
​
import javaSE.oop.Demo10.Outer;
​
public class Application {
​
   public static void main(String[] args) {
​
       Outer outer = new Outer();
       //通过外部类来实例化内部类
       Outer.Inner inner = outer.new Inner();
       inner.in();
       inner.getID();
  }
​
}
/*运行结果:
这是内部类的方法
       10
​
*/

 

package javaSE.oop.Demo10;
​
public class Test {
   public static void main (String[] args){
       //没有名字初始化类,不用将实例保存到变量中
       new Apple().eat();
       //接口同理
       new UserService(){
           @Override
           public void hello() {
          }
      };
       
       
  }
}
​
class Apple{
   public void eat(){
       System.out.println("1");
  }
}
​
interface UserService{
   void hello();
}
 
posted @ 2022-06-14 19:43  唐靈影  阅读(33)  评论(0)    收藏  举报