当前位置:  技术问答>java相关

还是我的考试:)

    来源: 互联网  发布时间:2017-04-25

    本文导语:  下列程序是否有错?如果有错试标出错误位置并指出是何种错误。 程序1  class ArraySum {   int a[3] = { 2, 4, 8};   int sum () {       int s=0; for  (int i = 0; i  y)    return x; else     return y; } float max(float x...

下列程序是否有错?如果有错试标出错误位置并指出是何种错误。
程序1 
class ArraySum {
  int a[3] = { 2, 4, 8};
  int sum () {
      int s=0;
for  (int i = 0; i  y)
   return x;
else 
   return y;
}
float max(float x, float y) {
if (x > y) 
   return x;
else 
   return y;
}
}

程序3 
class c {
  static int x = 20;
  int y = 30;
  static int plus() {
return x+y;
}
  public static void main(String [] args ) {  
    int result = plus();
    System.out.println(“result = “ + result);
}
}

程序4 
interface Stack {
  Object content[];
push(Object x);
Object pop();
boolean isEmpty();
}

|
程序1:
int a[3] = { 2, 4, 8};
应改为:
int a[] = { 2, 4, 8};

程序2:
没有错误

程序3:
静态函数不能调用非静态成员(静态成员初始化早于非静态成员)

程序4:
Object content[];
接口中的成员变量缺省为:public static final类型,须初始化
push(Object x);


|
1、
错误:int a[3] = { 2, 4, 8};
解决:int a[] = { 2, 4, 8};
原因:数组变量的声明只负责生命这个变量为数组类型,不能给定下标


2、应该没有什么错误
不过最好改成:
class NumberMax {
  int max(int x, int y) {
    if (x > y)
      return x;
    return y;
  }
  float max(float x, float y) {
    if (x > y)
      return x;
    return y;
  }
}
因为我记得java对返回值的检查是非常严格的


3、
错误:return x+y;
原因:类的static方法中,不能调用类中的非static变量和方法


4、两个错误
错误1:Object content[];
原因1:借口中的变量默认为final类型,所以要进行初始化,即:赋值,例如:Object content[] = new Object[5];

错误2:push(Object x);
原因2:要指定函数的返回类型,如:boolean push(Object x);


Over

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。














站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3