该用户从未签到
|
沙发
发表于 2015-04-04 11:28:55
|只看该作者
答案:不能访问局部的,可以访问成员变量(全局的)。
/ Z% }$ U/ p i0 n! ~3 @! T+ iclass Out
$ f# H9 l. K9 E: ]$ J# V. s3 |{
/ q) u. w& m% P X3 bprivate String name = “out.name”;
. T v4 n4 y4 A9 ]; ]" Vvoid print()) x1 ^+ F+ b, `5 Z9 ] n
{
! S7 O9 d+ E9 S4 efinal String work = “out.local.work”;//若不是final的则不能被Animal 使用.6 k/ f9 y1 U9 a2 z, U' U9 w6 Q
int age=10;
: s' c0 G: ]5 x4 Y# Jclass Animal% s) U. V) D( a
//定义一个局部内部类.只能在print()方法中使用.
) O) `/ e0 I- d& u* }3 @" {' o//局部类中不能使用外部的非final的局部变量.全局的可以.
6 [; V- K1 [. Y- ^$ `4 w' S/ |0 M: N{
) }) l. b! P& R4 L) y7 hpublic void eat()4 o) ^7 l9 l0 W. P
{
, X$ _5 O' h" l0 W' K) ]! NSystem.out.println(work);//ok6 m- h$ Y* U( h* L% a% ]7 k
//age=20;error not final% I [% B! x' Z
System.out.println(name);//ok.3 C {* C3 q/ |$ Z; p& I s- y
}, K/ i$ ^6 T0 M5 N) F4 G
}5 g# K6 [& A* R+ T1 r9 _
Animal local = new Animal();/ _+ ~/ _7 Q$ p! B$ I& h4 V
local.eat();
7 j' M1 [$ p! U# H6 s$ ~* }}
4 O8 p- k/ l$ M} |
|