java四种访问权限修饰符

本文归纳总结java的四种权限修饰符:public、protected、default(即默认,有的地方叫friendly)、private

ps:无访问权限修饰符时,默认为default,不用显示地写出来。

一、访问权限修饰符修饰类
1.只有public或者default能够用来修饰类。
2.一个.java文件中最多只能有一个类是用public修饰,并且这个类的名字必须与文件名相同。

//在名为Te.java的文件中

public class Te{
	public static void main(String args[]){

	System.out.println();
	}
	//由于Te类已经用public修饰,则GetValue类不能再用它修饰,无论GetValue类是否是Te类的内部类。
        public class GetValue{//错误
	}
}

public class GetValue{//错误
}


二、访问权限修饰符修饰成员变量和成员方法
1.public
被public修饰的成员变量和成员方法能在任意情况下被访问,其所在的方法、所在的类、所在类的子类、所在的包和其他包中的对象和方法都可以访问。
ps:由public修饰变量和非构造函数的方法违背了java的封装原则,此时代码安全性低。

//Te类的成员变量a可以被main()方法访问,也可以被SetSomething类中的setValue()方法访问
public class Te{

	public static void main(String args[]){
           SetSomething ss = new SetSomething();
	ss.a=0;
	int b=0;
	System.out.println();
	}
}
class SetSomething{
       public int a;
       void setValue(){
           a=10;
	}
}

2.protected
被protected修饰的成员变量和成员方法对其所在类、类所在的包、所在类的子类是可见的。对其他包中未继承它的类是不可见的。


3.default(默认)
成员变量和成员方法无访问权限修饰符时,它们只能被其所在类和类所在的包访问,即使所在类的子类都不能访问,但如果子类在同一类中时可以被访问。


4.private
被private修饰的成员变量和成员方法只能在本类中使用。即它是所在类的私有物,对类外面的代码是不可见的。

5.修饰符使用范围

访问权限本类同一个包不在同一个包里的子类其他包
public
protected×
friendly××
private×××



除了访问权限修饰符,还有其他种类的修饰符,此处就不一一阐述了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值