爱问知识人 爱问教育 医院库

或者声明抽象。请问怎么解决?

首页

或者声明抽象。请问怎么解决?

在java中,出现了问题说缺少方法主体,或者声明抽象。请问怎么解决?谢谢class person
{
  String name;//成员变量,实例变量
  static String country ="CN";//静态的成员变量,类变量
  public static void show();//用了static了 就可以调用show函数了
  {
    System.out.println(name+":::"+country);

  }

}

class StaticDemo
{
  public static void main(String[] args)
  {
    //person p=new person();
    //p.name ="zhangsan";
    //p.show();
    //System.out.println(p.country);
    System.out.println(person.country);

  }
}

提交回答
好评回答
  • 2012-03-17 14:07:20
      (1)你没有理解类和类实例的关系,类是对一个拥有数据和方法的信息的定义,而类实例则是由这些定义派生得到的一个数据体;比如:Person是一个人的定义,也就是一个类,而人张三就是类Person的实例;因此他们之间是由很多的区别的;例如:static修饰的属性或者方法属于类的属性和方法,为所有的类实例所共享,类属性和方法由编译器在编译的时候作特殊处理,jvm在加载的时候就生成,保存在特殊位置;没有使用static修饰属性属于类实例的属性,在运行是通过实例化类对象才能产生,保存在堆中;因此类的方法不能处理类实例的属性;你的show方法被定义为类方法,但是在要访问类实例属性name,编译要出问题;
    (2)java的语句需要分号来表示结束,但是方法定义不需要分号,你的show方法后面有个分号,编译出现问题;
    (3)按照java的惯例,类名第一个字母要大写,类实例第一个字母要小写;你的person类于此惯例有违背。
      

    好***

    2012-03-17 14:07:20

其他答案

    2012-03-17 11:27:15
  • 你第四行public static void show();多了分号了。把分号去掉。把name也设为static就不会报错了。希望能帮到你

    2***

    2012-03-17 11:27:15

类似问题

换一换

相关推荐

正在加载...
最新资料 推荐信息 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 177-196
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):