版主
主题
回帖0
积分10609
阅读权限200
注册时间2008-11-22
最后登录1970-1-1
在线时间 小时
|
package com.kenson;
# B: ? O( y7 w& D7 b
: u2 |/ P6 R* r
r B Y' r' K, Z: r- Bclass Outer{1 |/ a; D k }. t* y; k: p
private int a = 10;
* L6 U$ T! Z* A; B* C* z: i int b = 100;( F, Y/ P/ \8 ?! t
% K* q. G) G0 {4 }7 q5 i) ?
+ d+ U) @3 T( X private String outerName = "outerName";
( g0 w* s, X9 M2 W
: @9 }* ^0 M6 u# O& d7 M public static class StaticNetstedClass{5 W; o- Q4 C3 I8 G+ j1 V
public void print() {
' y7 c) J8 F$ ~9 F5 }' s- g# M# i6 M // 通过实例访问,可以访问private变量4 B4 W8 M" W3 a; I0 v1 [
System.out.println(new Outer().outerName);7 l' K+ i6 I9 j# x
}# E; I* ~7 x2 ]4 n( ]
}% _ g3 i/ g/ e3 V$ W
4 d* d# @5 i; b4 N
; ^" e8 q2 [5 X4 Z" O4 P
//内部类
7 I. ^6 o7 e& C+ G class Inner{
# V; T% ^4 h4 d5 G& ?2 z int c = 200;
5 v) O9 x7 d l& F$ M ) J7 x+ W4 _! N
class LocInner1{
' K* Z" z, c' q2 a2 K! g4 E- C7 F void Disp() {
3 F# E$ J$ _/ `' e3 { System.out.println("This is a LocInner1 Disp"); / j7 [/ l! d8 J# M7 y
} . r: Z9 u5 K/ `( F
}
' H2 X/ P7 u7 T- s' j+ m# r. ^; p0 W }& _: d* r: x. z% C, f' i
; F) h, b5 L6 \! F
//外部方法
: V+ Q% z" `8 S& d* f. c public void Display() {1 s! W5 ]" E) N5 I, g
System.out.println("a=" + a);3 C5 \6 J) n# v, d9 Z" A( I
//局部内部类
- E& R; B I/ \ B( T& Y5 q class LocalInner{% }: B8 U" ~/ S6 s4 E
String ln = "I am a Local Inner Class";
) l% C' F' q% W$ o- u6 N
: @# _+ o7 S1 f/ H void Disp() {. l! v0 P: v a
System.out.println(ln);0 W4 p% Z- p1 |
}- K" l [8 j. j( L5 Z1 c7 }
}
6 Z( ]" D4 ~. V+ I( L& ]0 S+ N0 @
4 g% u( v4 q1 G1 ? # B, f) H O( ]. y7 K4 A( e
LocalInner ln = new LocalInner();) N9 C2 h3 y/ `$ u6 A
System.out.println(ln.ln);( U, G) S4 h' ~3 \+ i
8 i% g: G2 z# i2 n$ H% \. o) _+ a$ ?% d
//声明匿名对像- e" q& g( [/ Q5 W# O; L
new LocalInner().Disp();
9 u6 L1 l2 b' g# z- V/ W& ?' E; K System.out.println(new Outer().a);
1 [4 ^- ^+ N. H1 J: N# R8 r N }- N( T! F3 f# K. O0 w. V
3 E- q+ x$ c. z" R, K. e}
: N5 f) \/ R$ _9 S& u6 k& H' @
# B7 p/ T4 v, f# x
) c7 \' y6 m: F% J
5 K; @6 I. v( e0 a% Y
" `9 ~( E5 r, ^# B5 opublic class HelloWorld {
0 J$ n B9 Z# y; t, H- @/ }" s5 _; G: K/ ?
public static void main(String[] args) {5 |6 l; T9 p1 d9 f
Outer outer = new Outer();
; y7 W8 ^" F4 z! B# j System.out.println(outer.b);
7 M5 _9 z% W w& @6 e: k) x: V
S+ s2 i% U# q5 O/ {& m outer.Display();8 y% r5 x+ d; F( O
1 o2 O% z, F' G3 m
Outer.Inner inner = outer.new Inner();+ u4 E8 j) H/ E+ F1 x
System.out.println(inner.c);
' a3 h0 @- B6 z+ X
; ~- r% z# x: M5 \1 e1 r K Outer.StaticNetstedClass staticClass = new Outer.StaticNetstedClass();
* R" b& @: W Q2 g# N staticClass.print();
: c4 t' C2 r: ^3 \
7 @6 ?) X+ T& w# \) K8 o8 o' e
: S! d( K2 s0 y* ^( G }, l# e" p a0 e8 w+ D- c7 W7 i
4 m$ [1 R0 n h9 V3 m}
0 Y8 N( `0 X: I3 a r+ h" ?2 s' `) p# Q0 ]' T2 d6 \( ?
|
|