访问权限的问题(访问限制符)private,protected,public
2015-10-30 15:29
330 查看
写在前面:在面向对象编程中,最提倡的是通过调用方法来改变自己的属性,类应当提供操作数据的方法,这些方法需要编程人员进行精心设计。
首先声明,一个类中的实例变量总是可以操作该类中的实例变量和类变量,类变量只可以操作该类中的类变量,与访问限制符无关。
对于私有变量和方法只有在本类中创建对象时,这个对象才可以访问私有成员变量和类中的方法。
class AAA()
{
public intmoney;
private intgetMoney(){
returnmoney;
}
publicstatic void main(String[] args)
{
AAAexa=new AAA(); //对象exa在AAA类中有效
exa.money=3000;
intm=exa.getMoney();
System.out.println("money="+m);
}
}
但是如果换成这样的就不行了
class AAA()
{
public intmoney;
private intgetMoney(){
returnmoney;
}
}
class E
{
publicstatic void main(String[] args)
{
AAAexa=new AAA(); //对象exa在E类中,不在AAA类中,因此下面两个调用是非法的
exa.money=3000; //调用非法
intm=exa.getMoney(); //调用非法
System.out.println("money="+m);
}
}
在面向对象编程中,最提倡的是通过调用方法来改变自己的属性,类应当提供操作数据的方法,这些方法需要编程人员进行精心设计的,这就需要将变量名定义为私有的private。有时候可以直接通过类名对变量进行定义,但是最好还是利用方法。
先创建对象,然后利用对象进行调用。
3、友好变量和友好方法,即不用private、public、protected修饰符的成员变量和方法。
在同一个包里面的类可以通过类名访问类中的友好变量和友好方法,但是,如果利用import引入了另一个包中的类,并用该类创建了一个对象,那么该对象将不能访问自己的友好变量和友好方法。
4、受保护的成员变量和成员方法
用protected修饰的成员变量和成员方法被称为受保护的成员变量和成员方法。基本用法和友好变量和友好方法一样,但是也有区别。
首先声明,一个类中的实例变量总是可以操作该类中的实例变量和类变量,类变量只可以操作该类中的类变量,与访问限制符无关。
1、私有变量和私有方法private
如果类中的某个成员是私有变量,那么在另外一个类中,不能通过类名调用这个变量,方法也是一样。对于私有变量和方法只有在本类中创建对象时,这个对象才可以访问私有成员变量和类中的方法。
class AAA()
{
public intmoney;
private intgetMoney(){
returnmoney;
}
publicstatic void main(String[] args)
{
AAAexa=new AAA(); //对象exa在AAA类中有效
exa.money=3000;
intm=exa.getMoney();
System.out.println("money="+m);
}
}
但是如果换成这样的就不行了
class AAA()
{
public intmoney;
private intgetMoney(){
returnmoney;
}
}
class E
{
publicstatic void main(String[] args)
{
AAAexa=new AAA(); //对象exa在E类中,不在AAA类中,因此下面两个调用是非法的
exa.money=3000; //调用非法
intm=exa.getMoney(); //调用非法
System.out.println("money="+m);
}
}
在面向对象编程中,最提倡的是通过调用方法来改变自己的属性,类应当提供操作数据的方法,这些方法需要编程人员进行精心设计的,这就需要将变量名定义为私有的private。有时候可以直接通过类名对变量进行定义,但是最好还是利用方法。
2、共有变量和共有方法
利用public进行修饰,可以通过类名直接调用,先创建对象,然后利用对象进行调用。
3、友好变量和友好方法,即不用private、public、protected修饰符的成员变量和方法。
在同一个包里面的类可以通过类名访问类中的友好变量和友好方法,但是,如果利用import引入了另一个包中的类,并用该类创建了一个对象,那么该对象将不能访问自己的友好变量和友好方法。
4、受保护的成员变量和成员方法
用protected修饰的成员变量和成员方法被称为受保护的成员变量和成员方法。基本用法和友好变量和友好方法一样,但是也有区别。
相关文章推荐
- java源码分析之ArrayList
- Android--------- Bitmap.Config ARGB_8888
- 双十一电信宽带会有优惠
- ABP之动态WebAPI(二)
- 一个简单的学生登陆系统的jsp实现之登陆身份验证
- XListView
- 《第一行代码——Android》之项目的目录结构
- KeepAlive
- 发邮件
- BZOJ2875 [Noi2012]随机数生成器
- 1159:Maze
- POJ 3080 Blue Jeans (暴力)
- java 静态(static)方法的继承和重写
- 智能汽车自主决策机制的致命缺陷
- Yum配置文件详解
- EditText入门
- erl_tree heap 堆实现
- 如何更便捷的监控前端服务质量
- SlidingMenu
- 数据库链接池