zoukankan      html  css  js  c++  java
  • 内部类

    什么是内部类?

    在一个类(A)中嵌套着另一个类(B)那么B就是A的内部类;

      1 public class Text1 {
      2        String name;
      3  public class text2{
      4         public void SetName(){
      5                name="123";
      6         }
      7  }
      8 }
    内部类的定义

    内部类的特点

    内部类会自动保存外部类的应用。内部类可以直接访问内部类的成员

    内部类的作用域:

    内部类按照作用域可以进行如下分类

    image

    而上面《内部类的定义》中就是定义一个实例内部类静态内部类只需在Class关键字前面加一个Static关键字即可。

    静态内部类不必须持有外部类的实例的引用

    局部内部类就是在外部类的方法中定义内部类。局部内部类不能有访问修饰符

      1 public class Text1 {
      2        String name;
      3  public void txt()
      4   {
      5       class text2{
      6         public void SetName(){
      7                name="123";
      8         }
      9   }
     10  }
     11 }
    局部内部类的定义

    局部内部类只在定义它的方法中有效。它还可以访问方法中定义的局部成员及参数

    内部类的使用

    在使用实例内部类之前必须先创建出它的外部类的实例

      1 Text1 t=new Text1();
      2 Text1.text2 t=t.new text2();
      3 
    局部内部类的调用

    而静态内部类在使用前则不必先创建它的外部类的实例

      1 Text1.text2 t=new text1.text2();
      2 
    静态内部类的调用

    比较实例内部类、静态内部类和局部内部类

    image

    内部类的继承:

    当一个类(A)继承另一个类(B)的内部类(C)时该类必须自动引用另一个类(B)的实例

    其引用关系如下:

    A——》C——》B

    内部类的用途:

    封装

    将外部类的实现封装成内部类对外只提供少量接口(方法)

  • 相关阅读:
    JQuery图片预览
    1.数组
    1.什么是C++
    安装PHPCMS 遇到的问题(fsockpen)
    解决采集时提示”没有找到网址列表,请先进行网址采集“的问题
    JAVA 常用的网站
    页面静态化
    我的C笔记系列一
    PHP缓存技术
    PHPCMS 采集规则
  • 原文地址:https://www.cnblogs.com/wangzheand/p/5400643.html
Copyright © 2011-2022 走看看