登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

ideality

@linux c 编程@

 
 
 

日志

 
 
 
 

出错MyTime.java:2:需要'.' MyTime.java:2:需要';'的解决办法  

2011-02-11 23:40:23|  分类: java |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

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());
 }
}

 

用javac 编译,出错:

MyTime.java:2:需要'.'

MyTime.java:2:需要';'

解决办法:去掉 import Time;这一句。并要设置环境变量CLASSPATH中,要在CLASSPATH中添加一个"."表示在当前目录中搜索类。

 

其实要想了解包的问题,首先要懂得包和目录的对应关系:
假设你的工作目录为:C:\workdir,那么你上边的两个Java文件就应该放在C:\workdir\mypack目录下,工作目录相当于“当前目录”,在当前目录下,你建立“mypack”目录,就是一级“包”。
对应的,在你的两个Java文件的头部,你应该加入包的定义“package mypack;”,表示这两个文件是定义在mypack包中的。由于两上个文件都在同一个包中,相互可以直接访问,不需要加import语句。


 

每个application都是从main method开始执行的,你写的这个程序,在method 里建立了一个Time instance然后在这个instance上call setTime() 和 toString() method。

这两个是不同的class,所以,大多数情况下要分开存在两个不同的.java 文件,把两个class写在一起很少见,叫做nested classes,很复杂,初学没有必要会。。

你也许不明白import的意思,主要的问题在这个import,在JAVA,import 这个词不是把你自己写的一个class引入另一个class,如果你是这样理解,那是完全错误的。

import的意思是引入一个standard java package.(They are in JAVA API),不是你自己写的class

e.g

import java.awt.*;

import java.util.*;

import java.io.*;

还有second=((ss>=0 && ss<60) ? ss :0);这种形式非常少见。(this is confusing people i think..)

初学的话,if statement will be much much better ,强烈建议不要用这种形式。

所以,只要把import去掉。这个程序没有问题。

  评论这张
 
阅读(825)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018