当前位置: 技术问答>java相关
简单编译问题
来源: 互联网 发布时间:2015-08-17
本文导语: 我在同一文件夹里写了2各java文件, A.java //--------------------- class A{ private int a; public void setA(int x){ a = x; } public int getA(){ return a; } } ClassDemo.java //------------- import my.A; public class ClassDem...
我在同一文件夹里写了2各java文件,
A.java
//---------------------
class A{
private int a;
public void setA(int x){
a = x;
}
public int getA(){
return a;
}
}
ClassDemo.java
//-------------
import my.A;
public class ClassDemo{
public static void main(String args[]){
A a = new A();
a.setA(5);
int i = a.getA();
System.out.println("i = " +i);
}
}
编译会出现问题,但把他们放到一起,则会运行,
问题:
2个 java文件编译,在同一个文件夹内,第2个怎样才能访问第一个?是不是好要加包?
A.java
//---------------------
class A{
private int a;
public void setA(int x){
a = x;
}
public int getA(){
return a;
}
}
ClassDemo.java
//-------------
import my.A;
public class ClassDemo{
public static void main(String args[]){
A a = new A();
a.setA(5);
int i = a.getA();
System.out.println("i = " +i);
}
}
编译会出现问题,但把他们放到一起,则会运行,
问题:
2个 java文件编译,在同一个文件夹内,第2个怎样才能访问第一个?是不是好要加包?
|
public class A{
private int a;
public void setA(int x){
a = x;
}
public int getA(){
return a;
}
}
ClassDemo.java
//-------------
public class ClassDemo{
public static void main(String args[]){
A a = new A();
a.setA(5);
int i = a.getA();
System.out.println("i = " +i);
}
}
private int a;
public void setA(int x){
a = x;
}
public int getA(){
return a;
}
}
ClassDemo.java
//-------------
public class ClassDemo{
public static void main(String args[]){
A a = new A();
a.setA(5);
int i = a.getA();
System.out.println("i = " +i);
}
}
|
在classdemo目录中建立my目录,把A.java放入 返回classdemo目录,编译
|
其实你还没有理解什么叫包,好好看看这个概念吧,你硬把my.a 和my0.b放到同一个文件夹,并不能说他们就在同一个包了,只要my.a和my.b包名my一样,才能说名他们是同一个包的。
|
你只要把A.java和ClassDemo.java放在同一个文件下,不要在任何一个前面加import对方就可以了
|
1.可以在两个原文件的开头都加上 package my;
这样两个文件同在一个包里,ClassDome就可以使用A了。
2.public class A ,把A声明为公共类,任何类都可以使用A。
这样两个文件同在一个包里,ClassDome就可以使用A了。
2.public class A ,把A声明为公共类,任何类都可以使用A。
|
你应该首先把A.java编译了呀!
然后再来编译这个ClassDemo.java;
另外,你前面应该是:
public class A{
然后再来编译这个ClassDemo.java;
另外,你前面应该是:
public class A{
|
都没有加package ,除非你把程序都放在你得classpath指定得根目录下