1. 程式人生 > >外部類訪問內部類的私有變數(優秀回答)

外部類訪問內部類的私有變數(優秀回答)

內部類就相當於一個外部類的成員變數,所以可以直接訪問外部變數,外部類不能直接訪問內部類變數,必須通過建立內部類例項的方法訪問。
你想不通的肯定是指內部類的私有變數怎麼可以被外部類訪問吧,按常規,私有變數m只能在InnerClass裡被訪問,

但你要注意,內部類就相當於一個外部類的成員變數,舉個例子。

class Outer{

    private int m;

    private class Inner{
        private int n;
        private int k;
    }

}

m和類Inner都是成員變數,他們之間是平等的,唯一不同的就是Inner它是包裝了幾個成員變數比如n,k,也就是說m n k是平等的,區別在於訪問n k要通過Inner,就是要建立Inner例項訪問n k,這樣解釋夠明白了吧。

本回答轉自:https://zhidao.baidu.com/question/338617798.html  @shorin1980的優秀回答