加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java之内部类

发布时间:2020-12-15 06:43:38 所属栏目:Java 来源:网络整理
导读:在Java中,允许一个类的定义位于另一个类的内部,前者称为内部类,后者称为外部类。 Inner class一般用在定义它的类或语句块之内,在外部引用它时必须给出完整的名称,Inner的名字不能与包含它的类名相同; Inner class可以使用外部类的私有数据,因为它是外

在Java中,允许一个类的定义位于另一个类的内部,前者称为内部类,后者称为外部类。

Inner class一般用在定义它的类或语句块之内,在外部引用它时必须给出完整的名称,Inner的名字不能与包含它的类名相同;

Inner class可以使用外部类的私有数据,因为它是外部类成员,同一个类的成员之间可以相互访问,而外部类要访问内部类中的成员需要:内部类.成员或者内部类对象.成员。

分类:成员内部类(static成员内部类和非static成员内部类)、局部内部类(不带修饰符)、匿名内部类

Test.java

package fac;

public class Test {
    int i;
     j;
    private  k;
     A{
         i;
        void setTestFields() {
            Test.this.i = 1;
            Test.this.j = 2this.k = 3;
        }
         set() {
            this.i = 4 get() {
            System.out.println(this.i);
        }
    }
     seInfo() {
        new A().setTestFields();
    }
     showInfo() {
        System.out.println(.i);
        System.out.println(.j);
        System.out.println(.k);
    }
    static  main(String[] args) {
        Test t =  Test();
        t.seInfo();
        t.showInfo();
        Test.A a = t. A();
        a.set();
        a.get();
    }
}

输出:

1

2

3

4

内部类特性:

  • 可以声明为final;
  • 和外部类不同,Inner class可声明为private和protected;
  • inner class可以声明为static,但此时就不能再使用外层类的非static的成员变量;
  • 可以声明为abstract类,因此可以被其它内部类所继承;

内部类的作用是什么?

主要是解决Java不能多重继承。

 Test2 {
    
     main(String[] args) {
        //现在类A可以获得类B和类C的方法
        A a =  A();
        a.testB();
        a.testC();
    }
}
    
 A{
    
     testB() {
         InnerB().testB();
    }
     testC() {
         InnerC().testC();
    }
    
    class InnerB extends B{
         testB(){
            System.out.println("这是重写之后的B方法");
        }
    }
    class InnerC  C{
         testC(){
            System.out.println("这是重写之后的C方法");
        }
    }
    
}
 B{
     testB(){
    
}}
 C{
     testC(){
    
}}

输出:

这是重写之后的B方法
这是重写之后的C方法

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读