小弟我初学JAVA,从网上搞了本电子书来学习。其中有一个例子运行就报错。请高手们指点下
//==========Time.java========
public class Time
{
private int hour;
private int minute;
private int second;
public Time()
{ setTime(0,0,0); }
public void setTime(int hh,int mm,int ss)
{
hour=((hh>=0 && hh<24)?hh:0);
minute=((mm>=0 && mm<60)?mm:0);
second=((ss>=0 && ss<60)?ss:0);
}
public String toString()
{
return(hour+":"+
(minute<10?"0":" ")+minute+":"+
(second<10?"0":" ")+second);
}
}import Time;
public class MyTime
{
public static void main(String args[])
{
Time Time=new Time();
time.setTime(11,22,33);
System.out.println("设置时间="+time.toString());
}
}
一编译就报错:
D:\Java Test>javac MyTime.java
MyTime.java:2: 需要 '.'
import Time;
^
MyTime.java:2: 需要 ';'
import Time;
^
2 错误
在网上找了下,也有这样的提问但还是不太清楚,说什么要用包。但书上却没有说,希望大虾能给我解释。
说明:Time.java 和MyTime.java都放在java Test这个文件夹里。classpath里也有".;"。
//==========Time.java========
public class Time
{
private int hour;
private int minute;
private int second;
public Time()
{ setTime(0,0,0); }
public void setTime(int hh,int mm,int ss)
{
hour=((hh>=0 && hh<24)?hh:0);
minute=((mm>=0 && mm<60)?mm:0);
second=((ss>=0 && ss<60)?ss:0);
}
public String toString()
{
return(hour+":"+
(minute<10?"0":" ")+minute+":"+
(second<10?"0":" ")+second);
}
}import Time;
public class MyTime
{
public static void main(String args[])
{
Time Time=new Time();
time.setTime(11,22,33);
System.out.println("设置时间="+time.toString());
}
}
一编译就报错:
D:\Java Test>javac MyTime.java
MyTime.java:2: 需要 '.'
import Time;
^
MyTime.java:2: 需要 ';'
import Time;
^
2 错误
在网上找了下,也有这样的提问但还是不太清楚,说什么要用包。但书上却没有说,希望大虾能给我解释。
说明:Time.java 和MyTime.java都放在java Test这个文件夹里。classpath里也有".;"。
time.setTime(11,22,33);
System.out.println("设置时间="+time.toString());
首先你new出来的是time不能是Time,不能和类重名。然后以为你用已经写好的Time类来构造实例了,所以要在类的开头引用Time,也就是要import Time;
java中的引用基本上都是小写的,LZ请注意
是public ,你就不用import time(这个写法也不对),去掉
这个试试。
private int hour;
private int minute;
private int second; public Time() {
setTime(0, 0, 0);
} public void setTime(int hh, int mm, int ss) {
hour = ((hh >= 0 && hh < 24) ? hh : 0);
minute = ((mm >= 0 && mm < 60) ? mm : 0);
second = ((ss >= 0 && ss < 60) ? ss : 0);
} public String toString() {
return (hour + ":" + (minute < 10 ? "0" : " ") + minute + ":"
+ (second < 10 ? "0" : " ") + second);
}
}class MyTime {
public static void main(String args[]) {
Time time = new Time();
time.setTime(11, 22, 33);
System.out.println("设置时间=" + time.toString());
}
}
{
public static void main(String args[])
{
Time time=new Time();
time.setTime(11,22,33);
System.out.println("设置时间="+time.toString());
}
}
--------------------Configuration: <Default>--------------------
设置时间=11: 22: 33Process completed.
同时我去掉了import time;就OK。谢谢各位的帮助