首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

一个莫名奇妙的异常

2012-02-29 
一个莫名奇妙的错误class Person{private String nameprivate int agepublic Person(String name,int ag

一个莫名奇妙的错误
class Person{
private String name;
private int age;
public Person(String name,int age){
this.name=name;
this.age=age;
}
  public boolean compare(Person per){
  Person p1=this;
  Person p2=per;
  if(p1==p2){
  return true;
  }
  if(p1.name.equals(p2.name)&&p1.age==p2.age){
  return true;
  }else{
  return false;
  }
}
  public class Demo{
  public static void main(String []args){
  Person p1=new Person("sunxiaolong",35);
  Person p2=new Person("nixiaohuan",26);
  if(p1.compare(p2)){
  System.out.println("想等");
  }
  else{
  System.out.println("不相等");
  }
  }
  }
   
}总是提示没有main函数,能解决此问题给最高分

[解决办法]
总是提示没有main函数,能解决此问题给最高分
你如何写的命令?应该是
java Demo吧,你写的java Person?或者java Demo.class ?
[解决办法]
+1

探讨
总是提示没有main函数,能解决此问题给最高分
你如何写的命令?应该是
java Demo吧,你写的java Person?或者java Demo.class ?

[解决办法]
改完了。自己看吧

Java code
class Person{    private String name;    private int age;    public Person(String name,int age){        this.name=name;            this.age=age;    }    public boolean compare(Person per){          Person p1=this;          Person p2=per;          if(p1==p2){              return true;            }           if(p1.name.equals(p2.name)&&p1.age==p2.age){            return true;           }else{              return false;            }    }    }public class Demo{  public static void main(String []args){      Person p1=new Person("sunxiaolong",35);      Person p2=new Person("nixiaohuan",26);      if(p1.compare(p2)){          System.out.println("想等");      }else{          System.out.println("不相等");      }  }}
[解决办法]
javac Demo.java
java Demo
结果是不相等
[解决办法]
//基本语法错误,
Java code
class Person {    private String name;    private int age;    public Person(String name, int age) {        this.name = name;        this.age = age;    }    public boolean compare(Person per) {        Person p1 = this;        Person p2 = per;        if (p1 == p2) {            return true;        }        if (p1.name.equals(p2.name) && p1.age == p2.age) {            return true;        } else {            return false;        }    }}public class Demo {    public static void main(String[] args) {        Person p1 = new Person("sunxiaolong", 35);        Person p2 = new Person("nixiaohuan", 26);        if (p1.compare(p2)) {            System.out.println("想等");        } else {            System.out.println("不相等");        }    }}
[解决办法]
public static void main(String []args)
public static void main(String[] args)
自己看看。
[解决办法]
public class Demo前面少了一个“}”。
[解决办法]
Java code
class Person{private String name;private int age;public Person(String name,int age){this.name=name;this.age=age;}  public boolean compare(Person per){  Person p1=this;  Person p2=per;  if(p1==p2){  return true;  }  if(p1.name.equals(p2.name)&&p1.age==p2.age){  return true;  }else{  return false;  }}}//括号加在这里 最后的去掉  public class Demo{  public static void main(String[] args){  Person p1=new Person("sunxiaolong",35);  Person p2=new Person("nixiaohuan",26);  if(p1.compare(p2)){  System.out.println("想等");  }  else{  System.out.println("不相等");  }  }  } 


[解决办法]

Java code
class Person{private String name;private int age;public Person(String name,int age){this.name=name;this.age=age;}  public boolean compare(Person per){  Person p1=this;  Person p2=per;  if(p1==p2){  return true;  }  if(p1.name.equals(p2.name)&&p1.age==p2.age){  return true;  }else{  return false;  }}}//括号加在这里 最后的去掉  public class Demo{  public static void main(String[] args){  Person p1=new Person("sunxiaolong",35);  Person p2=new Person("nixiaohuan",26);  if(p1.compare(p2)){  System.out.println("想等");  }  else{  System.out.println("不相等");  }  }  }
[解决办法]
Java code
class Person1{private String name;private int age;public Person1(String name,int age){this.name=name;this.age=age;}public String getname(){  return name;}  public boolean compare(Person1 per){  Person1 p1=per;  Person1 p2=per;  if(p1==p2){  return true;  }  if(p1.name.equals(p2.name)&&p1.age==p2.age){  return true;  }else{  return false;  }}}     class Demo{  public static void main(String []args){  Person1 p1=new Person1("sunxiaolong",35);  Person1 p2=new Person1("nixiaohuan",26);  if(p1.compare(p2)){  System.out.println("想等");  }  else{  System.out.println("不相等");  }  }  }
[解决办法]
首先遇到这种问题你应该先考虑是代码括号的匹配问题,你可以把每个函数折叠一下从而查找mian函数所在的位置,进而解决问题。
其次,作为一个程序员我们应该养成良好的编程习惯,这个需要从开始的时候就要加强,每个括号放在哪里,this在什么地方用等等。自己喜欢什么样的代码格式等等,这样就不容易出现很莫名的错位。

热点排行