java,一个包下面有2个类 A 和B A类里有一个内部类C,请问C中的的参数怎么在B类中获取到呢? 70
而且这个C还是匿名内部类,我只想获得C里面的一个String,我用的是GUI,用GUI的一个时间获得了一个String,想吧这个String放在B的FileReader里...
而且这个C还是匿名内部类,我只想获得C里面的一个String,我用的是GUI,用GUI的一个时间获得了一个String,想吧这个String放在B的FileReader里面,我想过各种方法获得的都是NULL,
我试过全局变量 set get方法.用数组 数组可以不过用在BufferedReader(new FileReader())这个里面用循环的话 也不行 用过什么吧这个String写带一个文件在去读也不行 用StringBuffer也不行用GUI界面的getText去取TextArea的值也不行
如果让我吧内部类写出去的话 值确实可以获得到 但是我有用线程 会报一个栈内存溢出错误.... 展开
我试过全局变量 set get方法.用数组 数组可以不过用在BufferedReader(new FileReader())这个里面用循环的话 也不行 用过什么吧这个String写带一个文件在去读也不行 用StringBuffer也不行用GUI界面的getText去取TextArea的值也不行
如果让我吧内部类写出去的话 值确实可以获得到 但是我有用线程 会报一个栈内存溢出错误.... 展开
5个回答
展开全部
这样做。。
在类A里面定义一个全局变量 result
然后在C里面调用 A.this.result = C.string
这样 就传递到A了。。。
然后在B里面 你就可以直接调用A。的全局变量
在类A里面定义一个全局变量 result
然后在C里面调用 A.this.result = C.string
这样 就传递到A了。。。
然后在B里面 你就可以直接调用A。的全局变量
追问
也试过,同样是NULL
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-26
展开全部
java访问某个类的方法、变量时,采用“类名.方法名()"、“类名.变量名",而匿名内部类之所以叫它匿名内部类,是因为它除了是个内部类外,它还没有名字。所以你又怎么可以访问的匿名类里面定义的东西呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置get,set方法,javabean的模式。
追问
试过 ,拿到的是NULL
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我今天也碰到过这个问题,处理事件的时候,去实现接口,就可以了
追问
你指的是重新写一个类,然后实现那个接口将事件的方法全放在这个类里面是吗,这样是可以获得参数,但是我有用线程,会报java.lang.StackOverflowError,是线程原因 还是我代码的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
package com.test.lianxi.w16;
public class A {
public String Astr;
A(){
C c = new C();
this.Astr = c.Cstr;
}
class C{
public String Cstr;
C(){
Cstr="123";
}
}
}
package com.test.lianxi.w16;
public class B {
public static void main(String[] args) {
A a = new A();
System.out.println(a.Astr);
}
}
这样就可以调得到了。。程序我调试过了,可以运行。GUI的也是同理。
public class A {
public String Astr;
A(){
C c = new C();
this.Astr = c.Cstr;
}
class C{
public String Cstr;
C(){
Cstr="123";
}
}
}
package com.test.lianxi.w16;
public class B {
public static void main(String[] args) {
A a = new A();
System.out.println(a.Astr);
}
}
这样就可以调得到了。。程序我调试过了,可以运行。GUI的也是同理。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询