• java基础之类(包含内部类)与接口的特点


    接口(特殊的抽象类):interface

      定义:接口是抽象方法和常量值的定义的集合,从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现

         是一种特殊的抽象类,使用interface表示声明,抽象方法无需实现。

         接口中成员变量默认是:public static final int num=0;(ps:变量也只能是这种类型,这三种修饰符可以相互改变位置)

         接口中方法是:public abstract int test();(ps:如不写public,编译通过,运行可能出现错误)

    接口中是无构造方法


      特性:
        1.接口可以多重实现
        2.接口中声明的属性默认为public static final ;也只能是public static final
        3.接口只能定义抽象方法,而且这些方法默认是public abstract的也只能是public的
        4.接口可以继承其它的接口,并添加新的属性和抽象方法


      注意:
        1.多个无关的类可以实现同一个接口
        2.一个类可以实现多个无关的接口
        3.与继承关系类似,接口与实现类之间存在多态性

    类-类 继承 接口--接口 继承 类---接口 实现

    内部类:
    1.局部类部类

      定义在方法中的内部类,如果内部类要使用局部变量必须是这个变量必须是final类型的( ps:因为当调用这个方法时,局部变量如果没有用final修饰,他的生命周期和方法的生命周期是一样的,当方法弹栈,这个局部变量也会消失,那么如果局部内部类对象还没有马上消失想用这个局部变量,就没有了,如果用final修饰会在类加载的时候进入常量池,即使方法弹栈,常量池的常量还在,也可以继续使用)

    2.成员类部类
      定义在一个类的内部方法外

      1.私有的成员内部类
      2.静态的成员内部类

    3.匿名内部类(一种特殊局部内部类)

    定义在一个对象内中,如:
      new Thread(new Runner(){
        //此处就是一个匿名的内部类(形式:new 接口/类,形成的就是其实现接口的子类或继承类的子类)
      });

    注意:方法调用完成后这个类还是存在的

    调用内部类

    生成内部类对象:

    普通的内部类生成:

    内部类 变量名=new 外部类().new 内部类();

    静态的成员内部类:

    内部类 变量名=new 外部类名.内部类();

    调用内部类的普通方法:
    内部类对象.内部类中的方法名()

    调用内部类的静态方法
    内部类名称调用.方法名

  • 相关阅读:
    从jQuery看JavaScript匿名函数与闭包
    向properties文件中写入信息(针对获取properties文件失败的总结)
    windows系统下的redis启动教程
    第零次作业
    C语言博客作业02循环结构
    c语言博客作业03函数
    第一次作业
    笔记
    整型类型
    鸡和兔
  • 原文地址:https://www.cnblogs.com/chaojibaidu/p/10734451.html
Copyright © 2020-2023  润新知