黑马程序员技术交流社区

标题: 前几天在教学视频遗留的一个小困惑 [打印本页]

作者: 张红伟    时间: 2013-9-10 13:08
标题: 前几天在教学视频遗留的一个小困惑
本帖最后由 杨增坤 于 2013-9-11 17:06 编辑

        
class Person {
     private  int age;
     public   void setAge(int a){
      age=a;
      if(a>0&&a<130){
       speak();
      }
      else{
       System.out.println("feifa age");
      }
     }
      public int getAge(){
       return age;
      }
      void speak(){
       System.out.println("age="+age);
      }
     }
     class PersonDemo{
   public static  void main(String[] args) {
    // TODO 自动生成的方法存根
       Person p=new Person();
       p.setAge(20);
      
   }
  }
上面是老师演示的,下面是自己敲得,自己的怎么就运行不了呢。


作者: 深知一生短暂    时间: 2013-9-10 13:10
请给上报错提示~~~
作者: 深知一生短暂    时间: 2013-9-10 13:14
本帖最后由 深知一生短暂 于 2013-9-10 13:20 编辑

public class Demo {

        public static void main(String[] args) {
                // TODO Auto-generated method stub
                Person p=new Person();
               p.setAge(20);               
        }
}
class Person {
    private  int age;
    public   void setAge(int a){
     age=a;
     if(a>0&&a<130){
      speak();
     }
     else{
      System.out.println("feifa age");
     }
    }
     public int getAge(){
      return age;
     }
     void speak(){
      System.out.println("age="+age);
     }
    }


代码没问题,你用什么开发环境?还是直接在命令行用编译器?
一般有main函数的类都必须 public 声明  (public 声明的类必须和文件名同名)
那是程序的入口

你代码的运行结果  age=20

演示.jpg (37.75 KB, 下载次数: 12)

哪不明白再问问,不是大问题

哪不明白再问问,不是大问题

作者: 张晓辉    时间: 2013-9-10 13:25
请再次检查下编译时的文件名称,注意大小写。。。
作者: 张红伟    时间: 2013-9-10 13:26
深知一生短暂 发表于 2013-9-10 13:14
public class Demo {

        public static void main(String[] args) {


错误: 在类 Person 中找不到主方法, 请将主方法定义为:
   public static void main(String[] args)

作者: 杨伟斌    时间: 2013-9-10 13:26
可以运行啊,结果是20。
代码如下:
class Person
{
        private int age;
        public void setAge(int a)
        {
                age=a;
                if(a>0&&a<130)
                {
                        speak();
                }
                else
                {
                        System.out.println("feifa age");
                }
        }
        public int getAge()
        {
                return age;
        }
        void speak()
        {
                System.out.println("age="+age);
        }
}
class PersonDemo
{
        public static  void main(String[] args)
        {
       Person p=new Person();
       p.setAge(20);
      
        }
}
答案及其运行方式如下:

C:\Users\Administrator\Desktop
作者: 杨伟斌    时间: 2013-9-10 13:27
C:\Users\Administrator\Desktop
作者: 杨伟斌    时间: 2013-9-10 13:28
不好意思啊,不会传图片,所以弄了好几次。

12121.PNG (13.75 KB, 下载次数: 11)

12121.PNG

作者: 深知一生短暂    时间: 2013-9-10 13:30
杨伟斌 发表于 2013-9-10 13:28
不好意思啊,不会传图片,所以弄了好几次。

行了!!!无问题了!!!加油!!!{:soso_e100:}
作者: 深知一生短暂    时间: 2013-9-10 13:35
张红伟 发表于 2013-9-10 13:26
错误: 在类 Person 中找不到主方法, 请将主方法定义为:
   public static void main(String[] args)
...

你文件名!!!! 是什么??? 将你的 class PersonDemo 类前 加public
如 public class PersonDemo{}
然后文件名必须是 PersonDemo.java
重建一个文件吧!!!!
或者用开发环境下的Rename

作者: 张红伟    时间: 2013-9-10 13:40
非常感谢。。。。
作者: 早知道    时间: 2013-9-10 15:22
你是不是因为没给Person加public
作者: ~路@人#甲~    时间: 2013-9-10 20:13
保存的文件名要跟public类的类名要一致!~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2