//编译的时候说 com.pagzs 包不存在, 怎么解?
import com.pagzs.*;public class TestPerson
{
public static void main(String[] args)
{
Person p = new Person("TOM", 1200, 2005, 10, 23);
System.out.println(" name = " + p.getName());
}
}==========================================
package com.pagzs;import java.util.*;
public class Person
{
public Person(String name, double s, int year, int month, int day)
{
FName = name;
Fsalary = s;
GregorianCalendar calendar
= new GregorianCalendar(year, month - 1, day);
Fhireday = calendar.getTime();
}
public String getName()
{
return FName;
} public double getSalary()
{
return Fsalary;
} public Date getHireday()
{
return Fhireday;
}
public int getID()
{
return ID;
} public void setID()
{
ID = NextID;
NextID = NextID + 1;
}
public void raiseSalary(double byPercent)
{
double raise = Fsalary * (1 + byPercent / 100);
Fsalary = Fsalary + raise;
}
private String FName;
private double Fsalary;
private Date Fhireday;
private int ID;
private static int NextID = 1;
}
import com.pagzs.*;public class TestPerson
{
public static void main(String[] args)
{
Person p = new Person("TOM", 1200, 2005, 10, 23);
System.out.println(" name = " + p.getName());
}
}==========================================
package com.pagzs;import java.util.*;
public class Person
{
public Person(String name, double s, int year, int month, int day)
{
FName = name;
Fsalary = s;
GregorianCalendar calendar
= new GregorianCalendar(year, month - 1, day);
Fhireday = calendar.getTime();
}
public String getName()
{
return FName;
} public double getSalary()
{
return Fsalary;
} public Date getHireday()
{
return Fhireday;
}
public int getID()
{
return ID;
} public void setID()
{
ID = NextID;
NextID = NextID + 1;
}
public void raiseSalary(double byPercent)
{
double raise = Fsalary * (1 + byPercent / 100);
Fsalary = Fsalary + raise;
}
private String FName;
private double Fsalary;
private Date Fhireday;
private int ID;
private static int NextID = 1;
}
D:> java com.pagzs.TestPerson --这句运行失败
name = TOM
这个时候TestPerson就变成了com.pagzs.TestPerson,原先的TestPerson已经不存在了。要加上-classpath的option是因为你参照了别的class,你需要告诉java到哪里可以找到这个class。
如果你把 D:\JSP 这个目录加到系统的环境变量里面的话,就可以直接象下面这样运行了:D:\JSP> java com.pagzs.TestPerson
我的"系统的环境变量" classpath = .;D:\JSP==========================================================================
如果不加这个package语句,那你只能放在com的parent path目录下。
TO: yanxiazhiqiu(if the words don't come my way...) 我这里的目录基本是这样的:
classpath = .;D:\JSP --类路径
D:\JSP --是基目录
D:\JSP\com\pagzs\Person.java
D:\JSP\TestPerson.java
D:\JSP>javac TestPerson.java --这样编译不过去
首先classpath里只放dt.jar和tools.jar这个两个文件的路径。
1.person.java里加上package com.pagzs;
2.TestPerson.java里只加import com.pagzs;不要加package语句
3.编译的时候命令行应该是:
D:\JSP> javac com\pagzs\Person.java
D:\JSP> javac TestPerson.java
4.运行的时候应该是:
D:\JSP> java TestPerson.java;你试试,再不行,我就无能为力了。
D:\JSP> javac TestPerson.java --怎解??
D:\JSP> javac TestPerson.java --怎解??