版主
主题
帖子
积分10609
阅读权限200
注册时间2008-11-22
最后登录1970-1-1
在线时间 小时
|
package com.kenson;- B {' Z* x* [3 u( H' x
( P; P! @. y% f% ]4 k: |4 z( D* P
# }+ t: b) y4 K3 @, Q u" S
class Outer{0 ~$ W4 C9 k: O+ t9 }! n) v+ I9 s
private int a = 10;+ F3 y' B# B, _
int b = 100;
# p' u7 ]6 G% {3 L
4 E" N& Y4 R0 `2 J1 A
" T" Y+ m" N1 a# {' d4 c private String outerName = "outerName";( L+ q' `7 j9 z' F
5 Q f, E0 |* {% P* }7 Q: r/ }) D public static class StaticNetstedClass{8 k' S' n: ?" Q
public void print() {: P+ F0 Z. O1 u8 U
// 通过实例访问,可以访问private变量
/ [+ f' S/ N3 x! \9 `! T) f System.out.println(new Outer().outerName);! U) K: H: ]* n! {; |$ Q
}+ ]' u5 K; x( ?; e9 i
}
+ C+ \8 S4 V+ u+ ~1 B3 d" b; F
8 B$ I3 i, W$ @ + v q7 N7 Z; f# J
//内部类# K( b# Y0 L* ]$ I& n
class Inner{5 L# g2 A7 n& F5 e5 P i
int c = 200;- T+ W1 g/ _- J# I9 N; Y7 W' {
$ j @- c- r) f. j5 ~
class LocInner1{
/ F5 r5 k$ U6 d! q+ s+ G void Disp() {
. j% S9 P% U& v5 n/ j System.out.println("This is a LocInner1 Disp"); ?) h9 p/ B: N' `, Z& L
} + ?3 j5 ~8 j% Y- \
}
5 C4 x& w. h0 D" b' k. L$ O# H }
: m2 i# u+ L8 T0 Y: ~: f( ~# y ) B9 _. I; c( G$ z2 C* ~
//外部方法7 A- z; d( h+ h% d
public void Display() {* {+ T, p& G" ` V( a l) p
System.out.println("a=" + a);
3 K/ { r( N' n8 r; ~ //局部内部类0 v! k4 h, U& |! P- g9 u( f
class LocalInner{% E( \. \1 H; w8 L" V' p" L
String ln = "I am a Local Inner Class";) O- B, T5 x& v% y. h
) x8 [/ ^4 q! f5 O
void Disp() {
; |4 p" t# K# H) v+ Y- L System.out.println(ln);
2 E7 O* P) c6 V" F) C3 A/ |$ \ }
' D" e8 o. l" J! B$ g+ p }
3 B) O$ ^1 q3 p1 M
! j8 w w2 t! X) q& K 3 e. {& F3 p$ l0 ]; R
LocalInner ln = new LocalInner();( [( f3 ~4 O7 o; T' Q& j
System.out.println(ln.ln);
8 V+ V" Y, ]. d1 c . H+ H! K. [: a) e; a0 v
//声明匿名对像1 Y3 L" o% |1 W9 u2 B
new LocalInner().Disp();
) i) G6 i" f- {7 Q System.out.println(new Outer().a);
8 c/ u; ?) L5 j2 {% [. d2 Z3 @: ]6 _1 @ }
6 t( K1 |% j4 H- ]$ s ) p5 V1 P' v5 a- a# v1 \7 ~! D8 t/ @
}2 U% Z7 [* _) r2 Q
, W" X4 T2 g7 R5 C7 [
5 n% E2 k2 a& ^: ~5 j5 }. |5 U+ u8 a& ?! }! D$ Y2 b; b5 [
. U3 ?' |& ~5 p
public class HelloWorld {
: s9 ` d9 y% N+ b* e1 e' Y2 D2 j8 {4 F$ q5 J
public static void main(String[] args) {
* u2 C! J1 G4 Y5 x+ I$ ~. g1 t, C( e0 N Outer outer = new Outer();
& A+ @# h" h+ n6 C& ?; c System.out.println(outer.b);2 f4 h w1 F/ K6 D
+ }# _. a n; u" k& y0 h6 _ outer.Display();- u) i1 {: F% t" l. m
?: p0 e( I2 V4 K
Outer.Inner inner = outer.new Inner();) Y" @9 c: N0 R, P5 j- u' e, P. ~
System.out.println(inner.c);" z% J& v7 N! ? V% ~6 ?$ G9 |
6 `& n6 ~1 a6 [$ A W$ z
Outer.StaticNetstedClass staticClass = new Outer.StaticNetstedClass();
9 n. J; D7 s7 F2 W$ ] ? staticClass.print();4 f L, ^6 I: q) D+ G* ~' i# N
" A! e- J b6 T. v1 Z8 D* d 2 {9 ]# q% C1 ~* ?
}# \3 b+ @3 I7 e0 c( ^
" h5 I- @4 d( x) y8 E; ]}1 e* C2 `4 t' j, j0 J Q) {' V
. W5 j& K6 ]6 g |
|