Java的三大特性

java是一个面向对象的语言,所以java也有面向对象语言的三大特性:继承,封装,多态,任何一个java项目,都会用到这三种特性,所以掌握好这三大特性非常的重要。

封装

我们为什么要使用封装?

我们使用封装是因为程序的安全性,让用户知道的才暴露出来,不需要让用户知道的全部隐藏起来,这就是封装,封装就是把对象的属性和操作(方法)结合为一个独立的个体,并尽可能的隐藏对象的的内部实现的细节。

我们使用封装的目的是什么?

我们程序的设计要求是”高内聚,低耦合“,高内聚就是类的内部数据操作(方法)细节自己完成,不允许外部干涉,低耦合是仅暴露少量的方法给外部使用,尽量方便外部调用。

封装有什么优点?

1、 提高代码的安全性。

2、提高代码的复用性。

3、“高内聚”:封装细节,便于修改内部代码,提高可维护性

4、“低耦合”:简化外部调用,便于调用者使用,便于扩展和协作。

封装的实现

Java是使用“访问控制符”来控制啸此细节需要封装的,啸些细节需要暴露的,Java中有4种访问控制符“,分别为private,default,protected,public,它们说明了面向对象的封装性,所以我们编写代码的时候,尽可以让访问权限降到最低,从而提高安全性。

下面是这4个访问控制符的权限:

private 表示私有,只有自己的类能访问。

default表示没有修饰符修饰,只有同一个包的类能访问。(默认访问控制符)

protected表示可以被同一个包的类以及其它包中的子类访问。

public 表示可以被该项目的所有包中的所有类访问。

例:

封装的细节

1、一般使用private的访问权限。

2、提供相应的get/set方法来访问相应的属性方法,这些方法通常是用public 来修饰的,以提供对属性的赋值和读取操作。boolean的get主法,一般是用is来开头的。

3、一此只用于本类的辅助性方法,可以用private修饰,希望其它类调用的方法用public修饰。

例:

public class Student {

//私有属性方法

private int id;

private String name;

private int age;

private boolean flag;

//get/set方法

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

//boolean的get方法

public boolean isFlag() {

return flag;

}

public void setFlag(boolean flag) {

this.flag = flag;

}

}

**细节决定成败!**

*个人愚见,如有不对,恳请扶正!*

java的封装性的优点_18、Java的三大特性之封装相关推荐

  1. 大数据必学Java基础(三十九):面向对象三大特性之一封装(Encapsulation)

    文章目录 面向对象三大特性之一封装(Encapsulation) 一.生活案例 二.Java中封装的理解

  2. Java——OOP三大特性之封装性(Encapsulation)通俗详细

    面向对象(Object Oriented Programming)三大特性 1.封装(Encapsulation) 2.继承(Inheritance) 3.多态(Polymorphism) 定义 En ...

  3. Java继承_Hachi君浅聊Java三大特性之 封装 继承 多态

    Hello,大家好~我是你们的Hachi君,一个来自某学院的资深java小白.最近利用暑假的时间,修得满腔java语言学习心得.今天小宇宙终于要爆发了,决定在知乎上来一场根本停不下来的Hachi君个人 ...

  4. java面向对象:三大特性:封装,继承,多态

    -----------------------------------面向对象:三大特性:封装,继承,多态 ----------------------------------- 1.什么是类?什么是 ...

  5. 面向对象的三大特性:封装、继承、多态

    面向对象的三大特性 面向对象的三大特性:封装.继承.多态 封装 封装,成员变量的封装,保证了数据的安全性.封装的好处:过滤了不合理的值.屏蔽内部的赋值过程.让外界不必关注内部的细节 Set方法 1.  ...

  6. 面向对象三大特性: 封装,继承,多态

    面向对象的三大特性:封装,继承,多态. 一.封装:目的:如何做类,让类更安全. 让一些成员变量不能被外界直接被访问. 方法: 1.将成员变量变为private. 2.在类里面做一个成员方法来间接访问. ...

  7. Day33 继承的三大特性之 封装与多态

    Day33 面向对象的三大特性之 封装与多态 文章目录 Day33 面向对象的三大特性之 封装与多态 1.派生方法的实操 2.面向对象三大特性之封装 3.property 伪装属性 4.面向对象三大特 ...

  8. java的三大特性,封装,继承,多态

    封装 Java代码   /** * 所谓封装,就是将对象具有的成员变量和成员函数包装和隐藏起来,让外界无法直接使用, * 被封装的成员只能通过某些特定的方式才能访问. * 实现封装有两个步骤: *   ...

  9. Java三大特性:封装,继承与多态

    (尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_25827845/article/details/84592274冷血之心的博客) 目录 (一)封装 封装的定义 封装 ...

最新文章

  1. FreeBSD设备驱动管理介绍(BSP: Ti AM335x)
  2. dlib dll load failed 找不到指定的模块
  3. java hbase 批量查询数据_HBase根据Rowkey批量查询数据JAVA API(一次查多条,返回多个记录)...
  4. 什么是 Visual VM?
  5. 数据结构与算法--查找与排序另类用法-旋转数组中的最小数字
  6. 剑指offer面试题:替换空格
  7. leetcode72 编辑距离
  8. idea 编译Java heap space 内存溢出
  9. sql如何取前几行_10 个不为人知的 SQL 技巧
  10. MyBatis_Generator的使用(实践)
  11. 3.7 钱包、帐户、token、智能合约、action、权限、权重和阀值之间关系
  12. C++ QT中国象棋项目讲解(三) 单机双人对战走棋
  13. 怎么给新版edge换皮肤外观? | 怎么给edge添加chrome插件?
  14. CentOS Linux操作系统
  15. 实现类CAD的交互式命令系统
  16. 2018年要过去了,年初说好要上完的网课呢?
  17. 酷睿i7 1165g7相当于什么水平 i71165g7属于哪个档次
  18. ​携程网全国各城市酒店数据​评论数据
  19. 基于javaweb的宠物店管理系统(java+jsp+javascript+bootstrap+mysql)
  20. android 斜边_android自定义控件之中间是斜线的占比条

热门文章

  1. javafx 和swing_集成JavaFX和Swing
  2. 让我们用jOOλ在Java 8中流式传输地图
  3. 无状态Spring安全性第2部分:无状态身份验证
  4. 通过快速Java和文件序列化加快速度
  5. 我如何向团队解释依赖注入
  6. 异常处理准则和最佳实践
  7. 使用Apache ActiveMQ的JMS开发基础
  8. Java中的高性能库
  9. 当集合a为空集时a的取值范围_高中数学必修一第一章集合分节练习和章末测试题含答案[1] 2...
  10. dism++封装系统使用教程_客栈管理系统“订单来了”客房订单盒子使用教程