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

© 心之信子 中级黑马   /  2014-8-6 18:29  /  1173 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 心之信子 于 2014-8-13 14:45 编辑

class Car
{
                String color = "红色";
                int num = 4;
                void run()
                {
                        System.out.println("color="+color+",num="+"num");
                }
}
class CarDemo
{
                public static void main(String[] args)
                {
                        Car c = new Car();
                        c.run();
                }
}

class CarDemo
{
                public static void main(String[] args)
                {
                         run();
                }
                public static void run()
                {
                        String color = "红色";
                    int num = 4;
                        System.out.println("color="+color+",num="+"num");
                }
}
void run()public static void run()有什麽区别?????

2 个回复

倒序浏览
本帖最后由 zhuohong_xiao 于 2014-8-6 18:55 编辑

1、所属的类不同。
2、调用的方式不同。
       void run()是car类中定义的run()方法。要通过创建对象才能被man方法调用。  Car c = new Car();      而  public static void run() 是定义在CarDemo类中的方法。1不需要创建对象就可以在man方法中直接调用。
3、权限不同。
      一个方法是没有修饰符。在本类或者同一包类中可见。一个是使用public修饰的是再任何类中可见。  
      对static的解释
      static表示静态。
      static修饰的方法可以被static修饰的方法或者非static修饰的方法调用。
      没有static修饰的方法则不能被static修饰的方法调用。


我就看到了这些。其余的要高人指点了。

回复 使用道具 举报
zhuohong_xiao 发表于 2014-8-6 18:45
1、所属的类不同。
2、调用的方式不同。
       void run()是car类中定义的run()方法。要通过创建对象 ...

谢谢回答,明白了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马