java什么是抽象与封装

互联网 19-5-22

抽象是将相同的类的共同特征总结出来,构造成类的过程;只关心成员变量以及成员函数,并不关系具体的实现细节。封装是把数据以及操作方法封装在函数/类里,然后再装起来;也就是把数据以及操作数据的方法绑定起来,对外界提供已经定义好的接口进行访问。

java的四个基本特征是抽象,封装,多态,继承。今天我们就来讲讲什么是抽象与封装。

抽象

抽象:将相同的类的共同特征总结出来,构造成类的过程。包括数据抽象以及行为抽象。数据抽象变成类的成员变量,行为抽象变成类的成员函数。抽象只关心成员变量以及成员函数,并不关系具体的实现细节。

下面是Person.class,表示与人类相关的数据以及各种活动,只列举部分的属性以及行为。

public class Person{     // 年龄(数据抽象)     public int age;     // 名字(数据抽象)     public String name;      public Person(){      }     public Person(int age,String name){         this.age = age;         this.name = name;     }     // 吃东西(行为抽象)     public void eat(){         System.out.println("I am eating");        }     // 走路(行为抽象)     public void walk(){         System.out.println("I am walking");       } }

创建一个人类的对象:

Person person = new Person(18,"张三");

上面的代码仅仅用来表示简单的抽象,将人共同的属性以及共同的行为抽象出来。

封装

封装其实可以理解为:“装”与“封”,就是把数据以及操作方法封装在函数/类里,然后再装起来。也就是把数据以及操作数据的方法绑定起来,对外界提供已经定义好的接口进行访问。面向对象的本质就是将现实世界描绘成一系列的完全自治,封闭的对象。可以理解为我们无论内部实现有多复杂,使用者可以完全不用理,只需要知道怎么使用就可以了。

举个小例子:下面是学生的类,study的方法其实就是一种封装,外界要是需要学生学习,那就直接调用study()方法即可,不需要知道我如何实现学习这个方法。

public class Student implements Serializable {     public String name;     public String number;     public int age;     public Student() {     }     public Student(String name, String number, int age) {         this.name = name;         this.number = number;         this.age = age;     }     public void study(){         System.out.println("我是学生"+name+",我今年"+age+"岁。");         //内部可能有很复杂的操作,但是调用者只需要关注如何调用即可     } }

以上就是java什么是抽象与封装的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: java
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:java类怎么写

相关资讯