zoukankan      html  css  js  c++  java
  • java-匿名内部类

    1、匿名内部类:就是内部类的简化写法。

     -  匿名内部类是局部内部类的一种,所以匿名内部类也应该写在方法里。

    2、前提:存在一个类或者接口。(这里的类可以是具体类也可以是抽象类)

    3、格式:

     -  new 类名或者接口名(){ 重写方法; }

    4、本质是什么呢?是一个继承了该类或者实现了该接口的子类匿名对象。

    5、其他:

     -  匿名内部类只针对重写一个方法的时候使用。调用多次的时候,不适合,匿名对象调用完毕就是垃圾,可以被垃圾回收器回收。

     -  匿名内部类是不能向下转型的,因为没有子类类名。

    6、例:

     1 class Demo {
     2     public static void main(String[] args) {
     3         Outer o = new Outer();
     4         o.method();
     5     }
     6 }
     7 
     8 interface Inter {
     9     public void show1();
    10     public void show2();
    11 }
    12 
    13 //匿名内部类只针对重写一个方法时候使用
    14 class Outer {
    15     public void method() {
    16         /*new Inter(){
    17             public void show1() {
    18                 System.out.println("show1");
    19             }
    20 
    21             public void show2() {
    22                 System.out.println("show2");
    23             }
    24         }.show1();*/
    25 
    26         Inter i = new Inter(){
    27             public void show1() {
    28                 System.out.println("show1");
    29             }
    30 
    31             public void show2() {
    32                 System.out.println("show2");
    33             }
    34 
    35             /*public void show3() {
    36                 System.out.println("show3");
    37             }*/
    38         };
    39 
    40         i.show1();
    41         i.show2();
    42         //i.show3();                        //匿名内部类是不能向下转型的,因为没有子类类名
    43     }
    44 }
  • 相关阅读:
    ubuntu18【合上盖子不休眠】
    linux和windows双系统开机显示 Minimal BASHlike line editingis supported xxxxxx
    Linux下opera不支持h5播放器的解决方法
    linux openjdk路径
    Linux安装redis tar.gz
    dpkg 安装deb文件
    Linux破解Navicat15
    kali设置grub主题
    kali安装git tar.gz
    kali 安装 teamviewer 显示检测到wayland
  • 原文地址:https://www.cnblogs.com/hfumin/p/10150403.html
Copyright © 2011-2022 走看看