亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么不能加this

//外部類

public class SOuter {

?private int a=99;//外部類的私有變量

? static int b=11;//外部類靜態變量

?//靜態內部類

? public static class SIuter{

?int ?b=22;//內部類的變量

?public void test(){

?System.out.println("訪問外部類中的b;"+SOuter.this.b);

?System.out.println("訪問內部類中的b:"+b);

?}

? }

? //測試靜態內部類

? public static void main(String [] args){

?//直接創建內部類對象

?SIuter si=new SIuter();

?//調用test方法

?si.test();

? }

}


正在回答

3 回答

都是靜態變量,雖然名字相同但是不需要加this。

0 回復 有任何疑惑可以回復我~
#1

鄧一格 提問者

非常感謝!
2017-08-13 回復 有任何疑惑可以回復我~

外部類中的b是static,因此不需要Outer.this.b

0 回復 有任何疑惑可以回復我~

您好,我的理解是因為你的b已經是外部類的靜態變量.而this是不能在靜態方法中出現的;

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么不能加this

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號