hello.name还是提示错误啊

来源:8-9 Java 中的 static 使用之静态方法

roronoa邹

2017-03-08 13:53

如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。

我在eclipse里这么做了。用的

public class StaticMethod {
    StaticMethod hello=new StaticMethod();
    static String hobby="imooc";
    String name="imooc";
    public static void main(String[] args) {
        // static是静态类型
        System.out.println("i love "+hobby);
        System.out.println("i love "+hello.name);

    }

}

但是提示我最后一行是错的,

写回答 关注

2回答

  • 白鬓丿小老頭
    2017-03-08 14:24:51
    已采纳

    package luan;


    public class StaticMethod {

        static String hobby="imooc";

        String name="imooc";

        public static void main(String[] args) {

        StaticMethod hello=new StaticMethod();//要在你需要的类里创建类的对象

            // static是静态类型

            System.out.println("i love "+hobby);

            System.out.println("i love "+hello.name);

     

        }

     

    }


    那灬一年 回复rorono...

    能说下错在哪吗,没看明白,谢谢

    2017-04-06 19:54:28

    共 2 条回复 >

  • qq_慕莱坞8430671
    2017-03-08 14:16:11

    System.out.println("i love "+hello.name); 把hello去掉就行了

    rorono...

    谢答!可是我的main函数是静态的,name不是,要想使用,要么在name前面加static,要么用对象来调用,我看上面是这么讲的。刚试着把hello去掉,也还是不对。

    2017-03-08 14:20:02

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530690 学习 · 6091 问题

查看课程

相似问题