面向对象—封装和private私有化

封装的概述:
封装是指隐藏对象的属性和实现细节,仅仅对外提供了可见的公共的方法。将不需要或则不能对外提供的内容隐藏起来,进行封装。简单地说就是将功能的具体实现代码写到方法中,外界只需要调用该方法名就可实现功能。
封装的表现:
函数就是一个基本的封装体。
类也是一个封装体
封装的优点:
1、提高了代码的复用性。
2、隐藏实现细节,还可对外提供访问方式,便于调用者时使用。
3、提高安全性。
4、提高代码健壮性。
举例:
电脑机箱:由cup、主板、显卡、内存、硬盘、电源等部件组成,将这些部件组成在一起便可以使用电脑,但是若将这些东西散落在外面,会存在一些不安全的因素。若使用机箱将这些下部件有序封装,并在机箱外壳留下一些插口。这样即方便管理,又方便使用。

私有private关键字:
private关键字是一个权限修饰符
只能用于修饰成员变量和成员方法
被私有化的成员变量和成员方法其对外界不可见,仅在本类中使用。
我们可用将成员变量修饰为private,使其隐藏,但是可用在类中提供相应的访问器set(),get()方法使得这些成员变量可用被调用和修改。
当类中的构造函数被私有化后,代表着该类不可被创建对象,因为在外部无法调用private修饰构造函数进行对象和成员变量的初始化,当然即使在类内部定义一个main()方法,在其里面依然不能创建对象,因为main()方法必须是静态的,静态的方法不能访问非静态的方法,而且构造方法不能被修饰为静态的。

//改代码展示如何调用和修改被private修饰的成员变量
class A{
	private int a;
	A(){
		this.a=0;
	}
	public int getA(){
		return a;
	}
	public void steA(int a){
		this.a=a;
	}
}
public class B{
	public static void main(String [] args){
		A a=new A();
		a.setA(10);  //修改a的值为10
		System.out.println(a.getA());  //打印修改后的值
	}
}

**注意:**方法也可被修饰为private,被修饰为private的方法只可在该类中使用,类外无法被调用。类中不需要对外提供的内容都私有化,包括属性和行为。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值