面向对象特征一:封装

首先说一下面向对象的三大特征:封装、继承、多态。
先来说一下封装,我们在生活中,假如要开车,只需要按照一定的程序操作即可,不需要了解车的内部到底是如何运行的,在程序中也是一样。
我们在写程序的时候要遵循的一个原则是:高内聚,低耦合。
高内聚:就是把内部操作细节自己完成,不需要对外暴露。
低耦合:仅对外暴露部分方法用于使用

隐藏对象内部的复杂性,只对外暴露简单的接口用于使用。从而提高系统的可扩展性课维护性。这就是封装。
通俗的说,把该隐藏的隐藏起来,该暴露 的暴露出来。这就是封装性的设计思想。

为什么要用到封装?

我们来从专业的角度分析以下为什么要用到封装。
如果我们对类内部的所有成员,都设置为公共的,那么我们的程序将会有安全性问题,也会在调用时产生混乱。
所以,我们要把类内部的属性封装起来,只供类内部自己调用,对外提供相应的getXxx()和setXxx()方法,用于对该属性操作,从而避免上述问题

封装的好处:

  • 使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑, 限制对属性的不合理操作;
  • 便于修改,增强代码的可维护性;

权限修饰符

封装,我们都会用到权限修饰符。Java提供了这几种修饰符:public、缺省、protected、private
这四种权限修饰符的权限如下图所示
在这里插入图片描述
在这里插入图片描述

以上四种修饰符的用法就是在定义成员的时候在定义关键字前面加。
像是

public static void main(String[] args)
private int age;

但是对于class的权限修饰,只能用public和default(缺省)。
public可以任意的访问(去掉’)
缺省只能在类的内部访问

我们下面看一下用来封装性的代码是什么样子的:

//创建一个类
class Person{
	//创建两个权限为私有的属性
	private int age;
	private String name;
	
	//提供两个get、set方法对以上两个属性进行操作
	public int getAge(){
		return age;
	}
	public void setAge(int age){
		this.age = age;
	}
	public String getName(){
		return name;
	}
	public void setAge(String name){
		this.name = name;
	}
	//在需要调用的地方创建类的对象
	//然后调用类的方法来进行对属性进行操作即可

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

为梦而生~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值