说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

关于不同包package内的静态变量访问的问题,帮忙解答

编辑:说三道四文库 发布时间:2018-07-19 11:33
HTML文档下载 WORD文档下载 PDF文档下载
我定义了一个类
//collections2.java
package com.khan.util;
import java.util.*;
public class collections2{
//要访问的成员变量:
.......
public static StringGenerator countries = new StringGenerator(CountryCapitals.pairs,0);
public static StringGenerator capitals = new StringGenerator(CountryCapitals.pairs,1);}

collections2有几个public static成员变量和几个public 函数

/*package com.khan.util;
import java.util.*;
//import com.khan.util.collections2.;
public class collection1{}//collection1.java改成同一个名字空间就正常了*/



//collection1.java
import java.util.*;
import com.khan.util.collections2.;
public class collection1{}
这是第二个文件,我可以访问到public 的函数,但是访问不到public static 变量


在不同名字空间的情况下,怎么访问,排除掉另外写函数返回变量的方法
自己解决不了,只能帮你UP一下了

顺便关注一下到底是什么问题,怎么才能解决
up up!!
给你个例子试试吧!
static 变量的便用形式:类名.变量名

/* collections2.java 
   位置:假设放在D:\test\com.khan.util目录下;
   在CLASSPATH中加上D:\test;
*/
package com.khan.util;
public class collections2{
public static String str1 = new String("111");
public static String str2 = new String("222");

public static void outStr() {
System.out.println("str1="+str1);
System.out.println("str2="+str2);
}
}

/* collection1.java 
   位置:放哪都行
*/
import com.khan.util.collections2;
public class collection1{
public static void main(String agrs[]) {
System.out.println("str1="+collections2.str1);
System.out.println("str2="+collections2.str2);
collections2.outStr();
}
}

编諿:
进入存放collection1.java的目录然后 javac collection1.java

运行:
进入存放collection1.java的目录然后 java collection1

结果:
str1=111
str2=222
str1=111
str2=222
自己已经解决,大家都有分,但是结果不是我想要的
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘