package?outerAndInnerClass;
class?Circle?{
????private?double?radius?=?0;
????public?Circle(double?radius)?{
????????this.radius?=?radius;
????????getDrawInstance().drawShape();?//?先創(chuàng)建成員內(nèi)部類的對象,再進(jìn)行訪問
????}
????private?Draw?getDrawInstance()?{
????????return?new?Draw();
????}
????//?內(nèi)部類
????class?Draw?{
????????public?void?drawShape()?{
????????????System.out.println(radius);?//?外部類private成員
????????}
????}
}上述代碼中,6-10行(尤其是8行)這段代碼是什么意思?麻煩解釋下每行是在做什么。謝謝!!
1 回答

噴飯哥
TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
第8-10行 getDrawInstance方法,返回一個(gè)Class為Draw的實(shí)例。
第6行 從getDrawInstance方法得到Class為Draw的實(shí)例,再調(diào)用這個(gè)實(shí)例的drawShape方法,而drawShape正好在第13-15行定義了。
添加回答
舉報(bào)
0/150
提交
取消