Java高阶部分知识点汇总-封装与隐藏详讲
Posted 文宇肃然
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java高阶部分知识点汇总-封装与隐藏详讲相关的知识,希望对你有一定的参考价值。
前言
在前面程序中,经常会出现通过某个对象的直接访问其属性的情况,这会出现很多潜在问题,例如前面我们定义过的学生类Student,我可以通过其实例对象直接访问到实例的age属性,并赋值,这在Java语法上是没有任何问题的,但是,如果我把这个age设置为负数或者设置为1000,这明显违背了现实,而前面说过对象是现实生活的描述,我们对一些现实类也需要有符合现实的数值,这就要提到面向对象的三大特性之一封装。
一.什么是封装?
封装是面向对象的三大特性之一,他的意思是将对象的属性隐藏起来在对象内部,不让外部直接访问对象内部信息,而是通过该类所提供的方法来实现对内部成员信息的访问。
封装是对现实生活的模拟,现实生活中的属性都是被隐藏在对象内部的,外界无法直接访问和修改。就像现实生活中的学生,每个学生对象的年龄是无法被直接修改的,只有时间流逝一年之后,年龄才会增长。再比如,你和别人接触的时候,别人并不能直接一看到你就知道你的名字,他必须得先询问你,才能得到你的名字。询问名字就是你对外开放的一个用于获取内部属性的一个方法,别人可以通过调用这个方法,来得到你的名字这个属性。对一个类或对象实现良好的封装,可以实现如下目的:
-
隐藏类的实现细节。
-
让访问者只能通过事先设置好的方法来访问数据,从而可以在方法里加入控制逻辑,限制访问者对属性的不合理访问。
-
可以进行数据的检查,保护对象数据的完整性。
为了实现良好的封装,我们需要从以下两个方面考
以上是关于Java高阶部分知识点汇总-封装与隐藏详讲的主要内容,如果未能解决你的问题,请参考以下文章