Java 之路 (十) -- 内部类(概念、分类、特性、意义、"多重继承"、继承)

本文详细介绍了Java中的内部类,包括成员内部类、局部内部类、匿名内部类和静态内部类的定义、分类和特性。内部类可以实现逻辑相关的类组织,提供访问控制,并实现某种形式的“多重继承”。文章还探讨了内部类的意义,以及如何通过内部类实现对多个接口的继承。此外,还讨论了内部类的创建、访问和继承规则。
摘要由CSDN通过智能技术生成

1. 内部类基础

1.1 什么是内部类

内部类的定义如下:

  • 可以将一个类的定义放在另一个类的定义内部,这就是内部类

更具体一点,对于编程思想而言:

  • 内部类允许将逻辑相关的类组织在一起,并控制位于内部的类的可视性。
  • 内部类就像是一种代码隐藏机制:将类置于其他类的内部,它了解外围类,能与之通信

1.2 内部类的分类

内部类分为以下四类:

  • 成员内部类:最最普通的内部类,定义在另一个类的内部
  • 局部内部类:定义在一个方法或者一个作用域内
  • 匿名内部类:直观来讲就是没有名称的成员内部类
  • 静态内部类:使用 static 修饰的成员内部类(书中称之为 嵌套类

下面就具体分析每个类的语法及其特性。

1.2.1 成员内部类

将包含内部类的外层的类都称为 外围类

成员内部类是最普通的内部类,定义位于另一个类(外围类)的内部,并且与成员方法和属性平级,可以假象为外部类的非静态方法。

1.2.1.1 内部访问外围

其形式如下:

public class Outer {
   
    String name = "";
    static int tag = 1;
    private int type = 0;

    public Outer(String name) {
        this.name = name;
    }
    private String f(){
        System.out.println("Outer.f()")
    }

    class Inner {     //内部类
        private String name;

        public void showInfo() {
            System.out.println(name);//此处表现出特性:成员内部类拥有其外部类的所有元素访问权。
            System.out.println(""+tag);
            System.out.println(""+type);
        }

        //内部类通过 外部类.this 令生成对外部类对象的引用
        public Outer getOuter(){
            return Outer.this;
        }
    }

    public Inner getInner(){
        return new Inner();
    }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值