作者adrianshum (Alien)
看板java
标题Re: [问题]inner class存取其外部成员的问题
时间Thu Jul 5 10:55:07 2007
※ 引述《losesong (shen)》之铭言:
: 大家好
: 小弟在练习使用匿名的inner class的时候遇到了点问题
: 请大家指点迷津一下
: 当我在inner class中去存取其外部class的某个field时
: 若这个field在外部class的建构式中才去宣告,那编译时就会出现错误讯息
: 讯息内容是cannot find symbol,而该symbol就是指那个field
: 程式码的大略示意图如下:
: public class OuterClass {
: public OuterClass() {
: ClassA refA = new ClassA(); //ClassA有一个我想用到的methodA
: }
: InnerClass inner = new InnerClass() {
: public void innerMethod() {
: refA.methodA(); //此处发生编译错误:cannot find symbol,symbol:varible refA
: }
: };
: }
简单来说, 第一个例子的 fieldA 根本就不是 OuterClass
的 member field. 既不是一个 member field, inner class
又怎可能存取得到?
Alien
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 202.72.0.45