java java面向对象-内部类概述

20180407 java java面向对象-内部类概述



内部类:定义在类结构中的另外一个类。


eg:
public class Out//这个就叫做外部类
{
  public class In//这个就是内部类
  {


  }
}








外部类也叫做宿主类
内部类也叫做嵌套类




为什么使用内部类:
(1)增强封装,将内部类隐藏在外部类之中,不许其他类访问该类(这个特点使用范围最广);
(2)内部类能提高代码的可读性和可维护性,把小型类嵌入到外部类中,结构上代码更接近。
(3)内部类可以直接访问外部类的成员(方法和变量),外部类不能直接访问内部类的成员。






可以把内部类 看成 是外部类里的 与方法和变量同级的东西。






所以类中可以定义的成员有:
字段
方法
内部类




内部类在双向链表中的应用:


//双向链表
public class LinkList
{
  //第一个节点
  private Node first;


  //最后一个节点
  private Node last;
  
  //节点类型
  class Node
  {
    private Node pre;
    private Node next;
    private Object element;
  }
  
}






内部类根据使用不同的修饰符或被定义的位置可分为4种:


(1)实例内部类:内部类没有使用static修饰;
(2)静态内部类:内部类使用static修饰;
(3)局部内部类:在方法中定义的内部类;
(4)匿名内部类:是局部内部类的一种特殊情况,这种类没有起名称(使用范围最广)。












































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值