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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java中interface中定義方法,標準的調用方式

java中interface中定義方法,標準的調用方式

九州編程 2019-03-20 17:15:05
package com;public interface ITest {    public void test();}===========================================package com;public class Test1 implements ITest {    @Override    public void test() {        // TODO Auto-generated method stub                System.out.println("調用成功");    }}======================================package com;public class Test2 {    private static ITest iTest;    public static void main(String[] args) {        // TODO Auto-generated method stub            iTest.test();    }            public ITest getiTest() {        return iTest;    }    public void setiTest(ITest iTest) {        this.iTest = iTest;    }    }為什么返回值為null???第一次用sf,求大神指點
查看完整描述

4 回答

?
慕容森

TA貢獻1853條經驗 獲得超18個贊

你只是聲明一個名為iTest的變量, 并未給其實例化, 在JAVA語言中通常是用NEW這個關鍵字來實例化一個對象的.


把你上面的代碼修改成如下的:


package com;


public class Test2 {


    public static void main(String[] args) {

        // TODO Auto-generated method stub

        ITest tmp = new Test1();

        tmp.test();

    }

}


查看完整回答
反對 回復 2019-04-20
?
寶慕林4294392

TA貢獻2021條經驗 獲得超8個贊

itest是個靜態變量,沒有初始化,為null,不能調用它的方法。要先初始化。


查看完整回答
反對 回復 2019-04-20
?
搖曳的薔薇

TA貢獻1793條經驗 獲得超6個贊

這里改成這樣private static ITest iTest= new Test1()


查看完整回答
反對 回復 2019-04-20
?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

因為你沒有new


查看完整回答
反對 回復 2019-04-20
  • 4 回答
  • 0 關注
  • 1900 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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