1. 程式人生 > >java中的訪問控制有什麽用?如何用法?請舉例

java中的訪問控制有什麽用?如何用法?請舉例

nbsp con eth 不能 ret direct col The www.

9.訪問控制 (視頻下載) (全部書籍)

【新手可忽略不影響繼續學習】 訪問控制有什麽用?在軟件公司裏是這麽用的,我們想像一種場景,在你的類中,你編了三個私有方法,馬克-to-win,別人當然都用不了,但在類外,你也是用不了的,你必須,在類裏再編一個公共方法,別人就能隨便用了!但是如果你的公共方法調用那三個私有方法的順序是132的話,全世界人民只能調用那個公共方法,按照132的順序,來使用那三個私有方法,他想按照123的順序來調用那三個私有方法,都沒辦法。因為這個類的發布權在你手裏,全世界人民只會到你的網站去下載。如果大家有需求建議說你把順序改成321,他們得經過你的同意,把這順序為321的公共方法,重新加入你的類中,重新在你自己的網站打包發布,所以保護了你的知識產權馬克-to-win。


Java的訪問指示符分類 1.public(公共的,全局的) 2.private(私有的,局部的) 3.protected(受保護的) 4.默認訪問級別。

public:public成員可以被你的程序中的任何其他代碼訪問。
private :private成員只能被它的類中的其他成員訪問。


默認訪問級別:如果不使用訪問指示符,該類成員為默認訪問。即在它自己的包內為public,但在它的包以外不能被存取。

封裝encapsulate的概念:就是把一部分屬性和方法非公有化,從而控制誰可以訪問他們。 (視頻下載) (全部書籍)

本章源碼

class Test3 {
int a; // default access訪問
public int b; // public access
private int c; // private access
// methods to access c
void setc(int i) { // set c‘s value
c = i;
}
int getc() { // get c‘s value
return c;
}
}

public class Test {
public static void main(String args[]) {
Test3 ob = new Test3();
// These are OK,a and b may be accessed directly
ob.a = 10;
ob.b = 20;
// This is not OK and will cause an error,錯誤
//ob.c = 100; // Error!, 因為c是私有變量
。。。。。。。。。。。。。。。。。。
詳情請見:http://www.mark-to-win.com/index.html?content=JavaBeginner/javaUrl.html&chapter=JavaBeginner/JavaBeginner2_web.html#AccessControl

java中的訪問控制有什麽用?如何用法?請舉例