黑马程序员————面向对象之封装
来源:互联网 发布:centos 7 xfce4 中文 编辑:程序博客网 时间:2024/06/05 00:47
------- android培训、java培训、期待与您交流! ----------
众所周知,面向对象思想有三大特征:封装,继承,多态。
下面详细说说封装。
封装是很好理解的,就是隐藏属性和实现细节,仅对外提供公共的访问方式。
封装的体现有类,方法,以及private修饰成员变量等。
类实际就是一个封装体,把事物的属性和行为功能封装成一个整体,使我们在new对象的时候能够使用里面的属性和方法。
方法也是一个封装体,将方法实现的细节封装成一个整体,而我们要用的只是需要调用方法来得到结果,而不必知道方法的具体细节。一个方法可以方便的被多个调用者调用。即使方法发生了变化,也仅对方法进行修改就可以了。
在使用类new对象的时候,可以直接对属性进行赋值,这样很容易给属性赋一个并不符合实际情况的值,而对成员变量的值进行判断必须依靠逻辑语句,显然在成员变量的位置进行逻辑语句的判断并不合理,而应在方法中进行判断才是合理的。这样java就提供了一个private关键字,将成员变量私有化,对外隐藏类中的成员变量。比如可以对不希望直接进行赋值的属性私有化,而对外提供赋值的方法。提高了数据的安全性。
private也是封装的一种体现。
由此可见封装的好处有:
1、 便于使用
2、 提高重用性
3、 将变化隔离
4、 提高安全性
封装的原则就是将不需要对外提供的内容都隐藏起来。
举例:
class Student{
//将年龄属性私有化
private int age;
//对外提供方法,可以对年龄属性进行赋值,并且可以对赋值进行判断
//而调用者并不需要知道是如何进行判断的,只要赋值提示不正确,改正即可
//并且也可以修改方法,改变判断条件
public void setAge(int age){
this.age = age;
if(!(age>0&&age<130)){
System.out.println(“年龄超出范围!”);
}
}
//同时对外提供外部对年龄属性的访问方法
public int getAge(){
returnage;
}
}
- 黑马程序员————面向对象之封装
- 黑马程序员笔记——Java面向对象之封装
- 黑马程序员—面向对象之封装、继承、多态
- 黑马程序员_面向对象—>封装
- 黑马程序员——面向对象3:面向对象的特点之——封装(Encapsulation)
- 黑马程序员学习日记——面向对象-封装
- 黑马程序员 Java面向对象——封装
- 黑马程序员 Java面向对象——封装
- 黑马程序员—面向对象特征之一封装
- 4、黑马程序员-OC面向对象—封装
- 黑马程序员—面向对象封装继承多态
- 黑马程序员—Java之面向对象
- 黑马程序员————OC面向对象_三大特性之封装
- 黑马程序员——OC语言基础——面向对象三大特性之封装
- 黑马程序员———面向对象的特性之封装
- 黑马程序员——OC—OC中面向对象的特性之封装
- 黑马程序员———面向对象之封装及this和static关键字
- 黑马程序员——学习日记7 java面向对象之封装
- JAVA学习第3天(3)static 关键字
- linux 网络基础
- EA窍门——如何设置不同包中元素之间的关系
- Git操作-分支管理(一)
- ZOJ题目分类
- 黑马程序员————面向对象之封装
- hiho一下 第四十四周 题目1 : 博弈游戏·Nim游戏
- HDU-2054-A == B?(Java大数BigDecimal)
- js缓冲运动、弹性运动、碰撞运动
- 5.19作业
- 基于用户的协同过滤推荐算法原理和实现
- 关于LTE系统中的逻辑信道、传输信道以及物理信道
- 剪裁图片【Ruby on Rails】
- web开发学习笔记(5):java.lang.OutOfMemoryError: Java heap space解决方法