javapublic函数_java中class,public的⽤法
java中class,public的⽤法
⼀.Java访问权限饰词(accessspecifiers)
Java有public、protect、friendly、private四种访问权限,并且这四访问权限的访问范围越来越⼩。
1.friendly
1)果⼀个class内的数据成员或⽅法没有任何权限饰词,那么它的缺省访问权限就是friendly。同⼀个package内的其它所有class都可
以访问friendly成员,但对package以外的class则形同private。
2)对于同⼀个⽂件夹下的、没有⽤package的class,Java会⾃动将这些class初见为⾪属于该⽬录的defaultpackage,可以相互调
⽤class中的friendly成员。如以下两个class分别在同⼀个⽂件夹的两个⽂件中,虽然没有引⼊package,但⾪属于相同的default
package。
classSundae{
//以下两个⽅法缺省为friendly
Sundae(){}
Voidf(){n(“Sundae.f()”);
}
publicclassIceCream{
publicstaticvoidmain(String[]args){
Sundaex=newSundae();
x.f();
}
}
2.public:可以被任何class调⽤
3.private:private成员只能在成员所属的class内被调⽤,如:
classSundae{
privateSundae(){}//只能在Sundaeclass中被调⽤
Sundae(inti){}
staticSundaemakASundae(){
returnnewSundae();
}
}
publicclassIceCream{
publicstaticvoidmain(String[]args){
//Sundaeclass中构造函数Sundae()是private,
//所以不能⽤它进⾏初始化
//Sundaex=newSundae();
Sundaey=newSundae(1);//Sundae(int)是friendly,可以在此调⽤
Sundaez=ndae();
}
}
4.protected:具有friendly访问权限的同时,⼜能被subclass(当然包括⼦孙类,即⼦类的⼦类)所访问。即,既能被同⼀package中的
class访问,⼜能被protected成员所在class的subclass访问。
⼆.Class的访问权限
1.Class同样具有public、protect、friendly、private四种访问访问权限:
1)public:在任何地⽅都可被使⽤
2)protect、private:除了它⾃⼰,没有任何class可以使⽤,所以class不能是
protected或private(innerclass除外)
3)friendly:同⼀个package中的class能⽤
2.如何调⽤构造函数被声明为private的class
1)⽤static函数
2)⽤Singteton模式
classSoup{
privateSoup(){}
//(1)静态函数⽅法
publicstaticSoupmakeSout(){
returnnewSoup();
}
//(2)The"Singleton"pattern:
privatestaticSoupps1=newSoup();
publicstaticSoupaccess(){
returnps1;
}
publicvoidf(Stringmsg){
n("f("+msg+")");
}
}
publicclassLunch{
publicstaticvoidmain(String[]args){
//Souppriv1=newSoup();编译错误
Souppriv2=ut();
Souppriv3=();
priv2.f("priv2");
priv3.f("priv3");
}
本文发布于:2022-12-30 21:46:02,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/61819.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |