该用户从未签到
|
沙发
发表于 2015-04-04 11:28:55
|只看该作者
答案:不能访问局部的,可以访问成员变量(全局的)。3 i& h- ^3 f( t0 v5 A" l, O
class Out
1 r7 x5 {1 ^9 [3 \{7 V/ g) _1 a& {, A1 M
private String name = “out.name”;' @& c) I. l2 b0 o! H
void print()4 K z8 h, ?: B( S8 P( Q' k' d
{
: b( @; _: S* \4 o* m: {+ F. T6 G0 ]+ \final String work = “out.local.work”;//若不是final的则不能被Animal 使用.
- Z+ l: C1 x* o* A2 O$ c" m* ~int age=10;; Z$ P7 x/ M! J7 L3 ~: p
class Animal
& G+ H* H a) C/ f( f, H//定义一个局部内部类.只能在print()方法中使用.5 A& C0 q: x2 J# t, P" s G9 ^
//局部类中不能使用外部的非final的局部变量.全局的可以.
: ~4 i1 J! p- K{
' q) f/ p {- y4 Apublic void eat()
, G4 R7 e2 ?. k3 O% ^/ C' y{
/ ? [% @& [, |* l0 b4 u: G2 V0 DSystem.out.println(work);//ok: b0 A: W+ t/ [& b6 ^/ q1 Y
//age=20;error not final, @, Q |) X# {7 b: \
System.out.println(name);//ok.
+ \6 {7 u" d+ X5 t}
$ E0 Y/ ], p9 Z1 D& K. ^. ]}
. @' o7 ^- N+ mAnimal local = new Animal();& J& _ k8 P3 |, {1 Q
local.eat();# p5 X& p; t0 \: Z2 v$ @
}
% g. G% ?: S& m. b, L9 h7 {} |
|