package
com
.
example
.
nested
;
import
java
.
util
.
Arrays
;
//nested classes có thể được sử dụng trong import để dễ dàng khởi tạo
import
com
.
example
.
nested
.
OuterClass
.
InnerClass
;
import
com
.
example
.
nested
.
OuterClass
.
StaticNestedClass
;
public
class
InnerClassTest
{
public
static
void
main
(
String
[
]
args
)
{
OuterClass
outer
=
new
OuterClass
(
1
,
2
,
3
,
4
)
;
// ví dụ static nested classes
StaticNestedClass
staticNestedClass
=
new
StaticNestedClass
(
)
;
StaticNestedClass
staticNestedClass1
=
new
StaticNestedClass
(
)
;
System
.
out
.
println
(
staticNestedClass
.
getName
(
)
)
;
staticNestedClass
.
d
=
10
;
System
.
out
.
println
(
staticNestedClass
.
d
)
;
System
.
out
.
println
(
staticNestedClass1
.
d
)
;
//ví dụ inner class
InnerClass
innerClass
=
outer
.
new
InnerClass
(
)
;
System
.
out
.
println
(
innerClass
.
getName
(
)
)
;
System
.
out
.
println
(
innerClass
)
;
innerClass
.
setValues
(
)
;
System
.
out
.
println
(
innerClass
)
;
//gọi phương thức sử dụng local inner class
outer
.
(
“Outer”
)
;
//Gọi phương thức sử dụng inner class vô danh
System
.
out
.
println
(
Arrays
.
toString
(
outer
.
getFilesInDir
(
“src/com/example/nested”
,
“.java”
)
)
)
;
System
.
out
.
println
(
Arrays
.
toString
(
outer
.
getFilesInDir
(
“bin/com/example/nested”
,
“.class”
)
)
)
;
}
}