• [JAVA]《Java 核心技术》(二)接口与内部类


    33
    C6
    接口与内部类
     
    接口主要用来描述类具有什么功能,而并不给出每个功能的具体实现
     
    一个类可以实现一个或多个接口,但只能继承一个父类。
     
    33接口
    接口是对垒的需求描述。
     
    接口可以包含一个或多个方法
    接口中还可以定义常量
     
    接口可以看成没有实例域的抽象类
     
    接口中所有方法都自动为public,但建议还是显示声明
     
    34
     
    数组的排序调用
    Arrays.sort(arr)
     
    35
    Comparable接口
     
    36
    接口不是类,不能new实例化,但可以定义接口的类对象
     
    接口可以继承接口
     
     
    37.
    接口与抽象类
    (1)多继承概念
     
    38 对象克隆
    浅拷贝:默认的克隆,是浅拷贝
    深拷贝:实现Cloneable接口,重新定义clone()方法
    Cloneable:标记接口
     
    39接口与回调。。
    Timer定时器 原理
    监听?
     
    40 内部类
    原因:
    (1)内部类方法可以访问该类定义所在的作用于中的数据,包括私有数据
    (2)内部类可以对同一个包中的其他类隐藏起来。
    (3)当想要定义一个回调函数且不想编写大量代码时,使用匿名内部类 比较便捷。
     
     
    常规内部类
    class A{
         private boolean field
         class AIn{
              public void fun(){
              //visitField(field)
              }
         }
    }
     
    只有内部类才能是私有类,否则其他的定义一个私有类没意义
     
    内部类访问外部的域可以用outClass.this.field
    外部类构造内部类对象: outClass.new InnerClass(xx)
     
    局部内部类
    写在方法里面
    注意方法的参数 如果局部内部类要用到,则要用final修饰。
     
    局部内部类不能用public or private访问说明符进行声明。
     
    技巧
     
    fun(final Integer a[])
     
    变量要更新,不能声明为final,但是要能访问。用长度为1的数组。
     
    匿名内部类:
    只创建这个类的一个对象,不比命名了。
    new Interface(){
         method();
    }
     
    静态内部类
     
    将内部类声明为static,取消产生的引用。
    静态内部类的对象除了没有对生成它的外围类对象的引用特权,
     
     
    41. 代理类
     
    Proxy
    invoke
     
    InvocationHandler
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    查找代码中的中文
    C# 清除cookies
    C# 32位程序在64位系统下注册表操作
    C# 32位程序在64位系统下运行中解决重定向问题
    C# 把一个文件夹下所有文件删除
    C# 把一个文件夹下所有文件复制到另一个文件夹下
    chromium浏览器开发系列第五篇:Debugging with WinDBG
    chromium浏览器开发系列第四篇:如何调试最新chromium源码
    chromium浏览器开发系列第三篇:chromium源码目录结构
    chromium浏览器高级开发系列第二篇:如何编译最新chromium源码
  • 原文地址:https://www.cnblogs.com/akingseu/p/3451950.html
Copyright © 2020-2023  润新知