暴简单的问题,100分请教

runnerrunning 2003-07-27 12:53:33
我还在用notepad来写程序:
package Flight;
public class Flight {
int altitude;
private int heading;
int speed;
float latitude;
float longitude;

void turnFlight (int angle){
heading = (heading + angle) % 360;
if (heading < 0)
heading = heading + 360;
}
void setHeading(int angle){

heading = angle %360;
if (heading < 0)
heading = heading + 360;
}
int getHeading(){
return heading;
}
void pringFlight() {
System.out.println(altitude + "/" + heading + "/" + speed);
}
void printOnReport () {
System.out.println("Flignt:" + altitude + "ft / " + heading + " degrees / " + speed + " knots ");
}
}



class CommercialFlight extends Flight {
int flightNumber;
int passengers;
void printFlight(){
System.out.print("Flight " + flightNumber + " ");
super.pringFlight();
}
}

/*
abstract class ControlFacility {
abstract boolean getClearance (FlightAction request);
}
class FlightControlTower extends ControlFacility{
boolean getClearance (FlightAction request) {
return false;
}
}

class GroundControlTower extends ControlFacility {
boolean getClearance (FlightAction request) {
return false;
}
}
*/

class Airport {
String airportName;
Flight inboundFlights[],outboundFlights[];
Airport () {
super();
airportName = "Unknown" ;
}
Airport (String newName) {
super();
airportName = newName ;
}
void printOnReport(){
System.out.println("Airport :" + airportName);
}
}

public class PrivateAirport extends Airport {
String Owner;
PrivateAirport(String str) {
Owner = str;
}
class PrivateFlight extends Flight {
String flightOwner;
PrivateFlight() {
flightOwner = Owner;
}
}
Flight getFlight() {
return new PrivateFlight();
}
}



如上的程序,我命名为Flight.java,定义package为Flight,请问我在别的文件中怎么访问啊?如果不在同一目录怎么办?另外这个文件编译不通过,因为有俩个public啊,我该怎么拆分文件成单独的public类,并且怎么注册和引用包package,达到被别的import的目的阿?初学者,以前用pb和bcb,请大家以后多关注啊
...全文
31 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
fft123 2003-07-29
  • 打赏
  • 举报
回复
分成
Flight.java
Airport.java
。。。
每个文件加上package flight;
只要在同一个包内,就可以直接相互引用。
其它文件需要引用时,import这个包就可以了,注意该包的classpath你要设置对

如果你不写同一个包,就把这些文件放同一个目录下,然后用javac -d . *.java来编译,否则相互引用的包编译通不过的(-d是指自动建立包的路径)
runnerrunning 2003-07-29
  • 打赏
  • 举报
回复
我是不会用别的编译环境啊,jbuilder8装了,但是不太会用啊
schwarzenegger 2003-07-28
  • 打赏
  • 举报
回复
记得 richard steven用vi写书,你也够牛。
geyf 2003-07-28
  • 打赏
  • 举报
回复
都在一个包下就直接:
都package flight;
runnerrunning 2003-07-28
  • 打赏
  • 举报
回复
楼上说的这个不太好,我这些东西如果做好了,应该是一个package,其他的程序引用的时候一个package就可以了,否则要package还有什么用?

还有问题请教:
如果我拆分成文件:
Flight.java
Airport.java
。。。
等等许多文件
而我在这些文件的开始都定义package flight;
但是这些文件的类互相有extends的关系
开始是否写成:
package flight;
imports flight;

这样怎么可以呢?
testjava 2003-07-27
  • 打赏
  • 举报
回复
我晕,你的PACKAGE名字不会换一个啊/只要路径配好就行了
runnerrunning 2003-07-27
  • 打赏
  • 举报
回复
还有问题请教:
如果我拆分成文件:
Flight.java
Airport.java
。。。
等等许多文件
而我在这些文件的开始都定义package flight;
但是这些文件的类互相有extends的关系
开始是否写成:
package flight;
imports flight;

这样怎么可以呢?

qq:14525554 希望大家提携
runnerrunning 2003-07-27
  • 打赏
  • 举报
回复
是否如果我要在同一个目录中,要声明public类,就要建立一个同类命的文件?
而如果在同目录中,就不需要引用包?
是否java没有c++的头文件的说法,需要引用的时候包涵头文件?也不需要一个hpp,一个cpp的对应?
kentenjoy 2003-07-27
  • 打赏
  • 举报
回复
去掉第二个public class编译就可以通过
veijerd 2003-07-27
  • 打赏
  • 举报
回复
在别的文件中访问只要import这个包就可以了
设置你的classpath使之包含这个包,就能被访问了

我该怎么拆分文件成单独的public类
---分成两个文件就可以了啊
javabandit 2003-07-27
  • 打赏
  • 举报
回复
1)import Flight.Flight;就可以用了
2)在同一个目录中,直接用Flight这个类就可以了,不用声明引且包
3)只需要将Flight这个包,放到系统的Classpath中或者编辑器的Classpath中就可以了,也就是说只要让Jvm认得到路就可以了!
runnerrunning 2003-07-27
  • 打赏
  • 举报
回复
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?
100分不够奢侈吗?

81,092

社区成员

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

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