zoukankan      html  css  js  c++  java
  • [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
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    湘湖的雪
    Lua 如何调用C打包的动态库
    自己制作一个USB自动挖矿器
    二十五块DIY 带屏幕可远程的温湿度传感器
    来看下,C# WebService WSDL自动生成代码,数组参数的BUG。。。ArrayOfString
    记一次非常规方法对接硬件设备(Grason Stadler GSI 61)
    京享值超8万的京东钻石用户告诉你套路是这样的
    C# 显示纯文本对齐封装(控制显示字体长度)
    [开源] C# 封装 银海医保的接口
    [开源]使用C# 对CPU卡基本操作封装
  • 原文地址:https://www.cnblogs.com/akingseu/p/3451950.html
Copyright © 2011-2022 走看看