A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 徐军涛 中级黑马   /  2012-11-17 00:38  /  2111 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class Something {
     public static void main(String[] args) {
        Something s = new Something();
       System.out.println("s.doSomething() returns " + doSomething());
    }
    public String doSomething() {
        return "Do something ...";
    }
}

3 个回复

倒序浏览
上面说了原因是你定义的方法是非静态的 可以用对象 s.doSomething()调用  也可以把你定义的方法 改成静态的 如 public static String doSomething()这也主函数就能调用了
回复 使用道具 举报
将public String doSomething() {
        return "Do something ...";
    }
改为 public static String doSomething() {
        return "Do something ...";
    }
}
就可以了。在同一个类中静态方法不能直接调用非静态方法。在老毕的视频中有说明
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马