java如何调用自己定义的数据类型

来源:百度知道 编辑:UC知道 时间:2024/06/18 18:15:13
public class Person
{
String name;
char sex;
int age;
public Person(String s,char c,int i)
{
name=s; sex=c; age=i;
}
public String toString()
{
String s=" 姓名"+name+" 性别"+sex+" 年龄"+age;
return s;
}
}

public class test
{
public static void main(String args[])
{
Person p1,p2;
p1=new Person("天天","女","20");
System.out.println(p1.toString);
}
}
我自己已经定义了一个person类型的数据,并且把这个数据类型编译后的字节码文件和自己所写的test文件已经放在了同一个文件夹下面,可是为什么在编译test。java的时候提示说找不到person类型的呢?在java中究竟该如何调用自己所定义的数据类型啊?希望高手帮忙解答!

我把你的代码放在Eclipse里面修改了一下,已经可以正确显示了
要修改的地方有几个:
1.最明显的错误就是创建对象实例那里,把p1=new Person("天天","女","20");改为p1=new Person("天天",'女',20);
2.如果你的文件名字叫Person.java那么你就把public class test改为class test,如果你的文件名字叫test.java那么你就把public class Person改为class Person,这是因为在java里只允许和你文件名一样的主类用public这个封装词.
3.最后一点就是把System.out.println(p1.toString);改成System.out.println(p1.toString());,你要掉方法,后面要加括号..

p1=new Person("天天","女","20");
改为:
p1=new Person("天天",'女',20);

并且把这个数据类型编译后的字节码文件和自己所写的test文件已经放在了同一个文件夹下面 那么找不到Person类型首先要考虑你的CLASSPATH变量里面有没有 . 这个当前路径

另外我看了你的程序,我估计系统不是说找不到Person类型,而是找不到Person(String,String,String)这个构造方法,因为Person中你定义的是public Person(String s,char c,int i) 这个构造,如果你想在Test类中使用的话就应该改成这样-->
Person p1,p2;
p1=new Person("天天",'女',20);
System.out.println(p1);

你调用的应该是toString()方法啊.