a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 136|回复: 0

[JAVA] 2012年计算机二级Java访问权限修饰符用法总结(1)

[复制链接]
发表于 2012-7-31 22:04:26 | 显示全部楼层 |阅读模式
 首先声明:java中,friendly这个修饰符并没有显式的声明,在成员变量和方法前什么修饰符也不用,默认的就是friendly。   为了条理清晰,分三种不同情况来总结。# ~' T: {/ W2 W- c  T- U
  一 访问权限修饰符修饰成员变量和方法  A1 J  R. ~3 H: `1 v; e  m
  public:表明该成员变量和方法是共有的,能在任何情况下被访问。  |! m0 S( B9 R5 e( F7 p; n
  protected:必须在同一包中才能被访问。(说的比较简单,看个例子就明白了)( V' D7 Q4 _+ ^& l1 D) [
  Java代码
8 }$ s' G6 I4 H" b( c  class A
4 R; L3 C/ U- ^  {0 ~; j- }: G7 |' r/ ^* U5 H/ Z+ J# Y
  protected int weight ;
$ }" e5 K6 H' O4 k  protected int f( int a,int b   )
2 O7 i6 V$ L8 q6 g  {# ^- B/ A( u9 `, w. W
  // 方法体, f4 B9 b7 J+ F
  }
, X5 x1 W! q# D  ?  }, z6 F) L* |7 u! H' W3 h) G
  假设B与A在同一个包中,则
* a7 H& E; B" D2 ^  Java代码& }6 P' H- e, m
  class B
" p- j% T1 u2 z9 Z5 C# y, M/ a5 D- U5 e- ~  {
+ T' m) Z4 e4 g. C  void g()9 Q% S$ d$ X1 e
  {
/ g' }5 R9 t, g) v9 u. z/ ^6 @  A a=new A();, Y/ I* r$ @$ N1 t. V
  A.weight=100;//合法4 J7 ?2 V3 t9 w' \  \3 h% E/ a* P
  A.f(3,4);    //合法
. `# E5 G8 l! u$ `) }  }
) K. g$ b/ O9 V: q  }
8 L8 f+ n* O2 N$ F. a+ ?) j/ U  特别说明:什么是在同一个包中?
+ z3 w& ^) P7 C% w  答:用package打包在一起的class ,叫在同一个包中。(不明白,举个例子)
+ |" H5 O( e6 ?" W4 l  eg:在JDK的src\java\io中,你会看到许多java类,第一句源代码都是package java.io;
% e( P3 z$ s' i4 C0 A# _  没有使用package打包的,在同一目录下的类也会被视做同一个包。
! H8 e* g8 j' n+ U2 t$ |  friendly:在这种情况下中,同protected。区别在第二和第三种情况中。
3 n+ A% |5 e1 C8 O9 z  Java代码
" H9 C' G* y! ~) O/ W  class A
, c& A6 I9 o% [. C: i  {
9 d; M! [$ F! [# t* V0 W  int weight ;
. ^4 F! v/ g, ?- d( M% D$ i; J  int f( int a,int b   )
! i- \4 K/ v3 ]) l1 u& ?  {5 e- n' k; s2 d+ _
  // 方法体
# S- G, J: F0 A  }3 a' ^: v% b! L- x. ]
  }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-3 02:08 , Processed in 0.172284 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表