下列java程序为何报错?

两个地方有问题:1. return sname1.getSname().compareTo(sname2.getSname());//报错 sname1是String类型,不是Student类对象,不能再调Student.getSname()方法 2. System.out.println(s.compareStudent(s[0],s[1]));//报错 这个地方写错了,应该是System.out.println(s.compareStudents(s[0...
下列java程序为何报错?
两个地方有问题:
1. return sname1.getSname().compareTo(sname2.getSname());//报错

sname1是String类型,不是Student类对象,不能再调Student.getSname()方法
2. System.out.println(s.compareStudent(s[0],s[1]));//报错

这个地方写错了,应该是System.out.println(s.compareStudents(s[0],s[1]));,少写了一个“s”2013-09-15
return sname1.getSname().compareTo(sname2.getSname());//报错

  sname1是String对象而不是你自定义的Student对象,所以没有getSname方法
  所以如果你试图对sname1对象调用getSname方法就会报错

  正确的调用方法是:
  s1.getSname().compareTo(s2.getSname());
  或者直接sname1.compareTo(sname2);
----------------------------------------------------------------
System.out.println(s.compareStudent(s[0],s[1]));//报错

  这里报错,是因为s是一个数组而不是对象
  你试图对数组调用compareStudent方法,自然也会报错
  直接调用compareStudent即可
  即:System.out.println(compareStudent(s[0],s[1]));2013-09-14
return sname1.getSname().compareTo(sname2.getSname());//报错 return sname1.compareTo(sname2);//不报错2013-09-14
mengvlog 阅读 8 次 更新于 2025-07-20 15:34:42 我来答关注问题0
  • 另一个常见的错误是空指针异常。当程序试图访问一个未初始化或已被赋值为null的对象的属性或方法时,就会抛出空指针异常。这通常发生在对null对象调用方法或访问其属性时。为了避免这种情况,应该在使用对象之前检查它是否为null。可以使用if语句来检查对象是否为null,例如if(object != null) { object.m...

  •  yanlun0323 这个Java程序为什么会报错的??

    Java语法限制;提示如下:The method main cannot be declared static; static methods can only be declared in a static or top level type 如果非要定义,那么这个sandwish类需要改为static class package com.yanlun.starter.lab;/** * @author 作者:Yan,Email:yanlun0323@163.com * @versio...

  •  ilvwhy JAVA中以下代码中的,第17行的for语句为何会报错

    break; //因为循环到这里必定会退出,j+=2 这一步不可能执行得到,所以编译器会警告。} 检查一下你的代码逻辑 比如 if(n%j==0){ flag=false;break;} 如果检查以后发现你的逻辑是对的 那么根本没必要用循环了 因为循环里的代码执行一次就退出了 黄色的感叹号只是警告,并不是报错。

  • shenkong8888 JAVA程序运行异常报错

    这种问题通常是由于JVM底层出现错误,或者是由于机器长时间运行导致过载。建议尝试重启机器来解决这类问题。如果重启后问题仍然重现,那么你需要详细描述你的操作步骤和关键代码,这样我们才能更好地帮助你解决问题。JVM底层错误可能包括但不限于内存溢出、线程死锁、类加载异常等。这类错误通常需要通过查看JVM日...

  •  lj5405464 求问“错误-Java(TM)安装程序 在使用当前Internet连接设置的情况下,此安装程序无法继续。”怎么解决?

    出现此错误消息的原因可能有以下两个:目前,联机安装程序不支持身份验证代理。如果您位于身份验证代理服务器之后,则会收到此错误消息。如果您需要一台代理服务器,但未在浏览器中指定代理服务器信息,将出现此错误。解决方案 可用两种方法解决这一问题。可使用 Windows 脱机安装。在浏览器中指定代理服务器...

檬味博客在线解答立即免费咨询

报错相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部