是不是在一个程序代码里不能有两个public 的class?那我这个怎么不能编译通过?

johnny_jiang 2004-04-06 11:55:25
/*
* jex6_10.java
*
* Created on 2004年4月6日, 上午10:46
*/

package text_book;
import java.io.*;

/**
*
* @author E
*/
public class Spot //<<<<<<<<<-------就是这里有问题!!
{
private int x,y;
Spot(int u,int v){setX(u);setY(v);}
void setX(int x1){x=x1;}
void setY(int y1){y=y1;}
int getX(){return x;}
int getY(){return y;}
double dist(Spot R){ return Math.sqrt((x-R.x)*(x-R.x)+(y-R.y)*(y-R.y));}
}
class Trans
{
void move(Spot p,int h,int k)
{
p.setX(p.getX()+h);
p.setY(p.getY()+k);
}
}

public class jex6_10 {

/** Creates a new instance of jex6_10 */
public jex6_10() {
}

/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
Spot Q=new Spot(2,3);
System.out.println("Q点的坐标:"+Q.getX()+","+Q.getY());
Trans ts=new Trans();
ts.move(Q,4,5);
System.out.println("移动后的坐标:"+Q.getX()+","+Q.getY());

}

}

//我希望另一短代码能够利用这里面的Spot类!可是无效!
//另一段代码中的要引用Spot后,编译时说:
//jex6_10.java [14:1] class Spot is public, should be declared in a file named Spot.java

...全文
194 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
battyht 2004-04-07
  • 打赏
  • 举报
回复
是啊
放到Spot.java 然后package到一起就可以了啊
一个.java里面肯定不能有2个public class 的,要不怎么命名呢?
shine333 2004-04-07
  • 打赏
  • 举报
回复
为什么不把它放到自己该去的地方 Spot.java
OnlyLikeJava 2004-04-07
  • 打赏
  • 举报
回复
你把public class jex6_10这句的public去掉就行了,一个文件中是不允许有2个public 类的。
agong1980 2004-04-06
  • 打赏
  • 举报
回复
包小的类
agong1980 2004-04-06
  • 打赏
  • 举报
回复
你可以用大类包下的类 用{}包
programer23 2004-04-06
  • 打赏
  • 举报
回复
当然,一个文件里只能有一个public类与其他文件连接。
wdkb 2004-04-06
  • 打赏
  • 举报
回复
都被楼上的说了
我只能说他们说的对呵呵
bob5018 2004-04-06
  • 打赏
  • 举报
回复
将两个public类分别放到两个.java文件里,将两文件放在同一文件夹(text_book)下即同一package中。在你的package应该是text_book文件夹
或者去掉一个类的public的修饰,一样可以执行。
kewin 2004-04-06
  • 打赏
  • 举报
回复
一个.java不能有2个public class
你把class Spot 放在另一个文件不就行了
pellet 2004-04-06
  • 打赏
  • 举报
回复
对的,不能有两个public类,你把代码分到两个文件里吧,然后放在一个文件夹,或者放在一个package里
JetGeng 2004-04-06
  • 打赏
  • 举报
回复
是的,一个.java不能有2个public class
hehe
wzrlover 2004-04-06
  • 打赏
  • 举报
回复
是的,一个.java不能有2个public class
johnny_jiang 2004-04-06
  • 打赏
  • 举报
回复
那我的Spot就无法被其他.java中的类调用了?
Campfire 2004-04-06
  • 打赏
  • 举报
回复
同意楼上的
1)分成两个文件﹐放在同一个包或(目录)下
2)去掉一个public 了﹐只把你一定要用main函数的那个写成public就好了
看自己需要啦

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧