private int getMoney() {
; v4 N! U- r1 Q; _' [ return money;' w% E: Q x4 ^" F$ n$ T& y
}
) l, d# \$ E3 b) c. ? public static void main(String args[])
, Y% b; m$ [# F {
1 e" ?0 p7 I6 k+ b+ _ Test te=new Test();( I# F- F6 `8 y6 b) X6 a! ^
te.money=3000; //合法8 I% i' Q& j0 L& Z% V3 t- ]
int m=te.getMoney(); //合法
8 B0 s+ P4 ~& u8 v- W System.out.println("money="+m);( h* h/ ^) w) G# n1 E) U
}
8 i% T+ H* v) N/ W" G- X0 s }
- S* t$ E: D# N. F( D' f9 S( j PS: 实际上,把重要的数据修饰为private,然后写一个public的函数访问它,正好体现了OOP的封装特性,是OOP安全性的体现。
6 y- N2 m- g# L8 b* J 二 访问权限修饰符修饰类
* w/ x$ o6 T2 u7 w% r q 1,不能用protected和private修饰类。
1 ?; y& Q& V) [' |! F 2,用friendly修饰的类叫友好类,在另外一个类中使用友好类创建对象时,要保证它们在同一包中。8 u) A9 }' b! {& Z
三 访问权限修饰符与继承
2 g2 N8 e' H. `1 I 这里的访问修饰符指的是修饰成员变量和方法。可以分为两种情况:
8 ^* {8 d# a0 ]/ M0 a4 K- T 1,子类与父类在同一包中
1 a( u; ?7 X8 s' m 此时只有声明为private的变量与方法不能被继承(访问)。
4 ]7 ]1 S7 G. f# s- b Java代码! e& x7 _) Z3 D5 l9 l$ J
class Father
# U- v; }; b S, S7 I6 X {- x- V% T! ]8 c! r& x/ u
private int money ;
1 D4 J, N% o: e1 u int weight=100;0 w! u# M# A% B) W) Y6 L
}- X9 }3 J5 }/ v6 T& m( A
class Son extends Father
, {2 Z- g$ s* T$ ?! x/ V2 D, T {
+ k& e: I& u& p! F! [6 z viod f()
3 X1 \! a4 N7 U {( U" G {
6 r/ y7 e0 i: V! F0 t" k money=10000;// 非法
' u' p1 t1 W/ z @0 W weight=100; // 合法6 s- C o: Y2 p. A1 ~
}7 t& R, z2 f* I5 Z
} |