1.对象
现实世界中,随处可见的一种事物就是对象,对象是事物存在的实体,比如人,桌子,电脑,眼前的屏幕。在计算机的世界中,面对对象程序设计的思想要以对象来思考问题,首先要将现实的实体抽象为对象,然后考虑这个对象所具备的属性和行为,比如现在正在写这篇博文的我,就是一个对象,将我抽象为对象,然后识别这个对象的属性,对象具备的属性都是静态属性,比如我是男的,身高168,可以说话等等,接着识别这个对象的动态行为,如睡觉,看书,写博文。当识别出这个对象的属性和行为后,这个对象就被定义完成了,然后可以根据再根据我,了解其他人,可以将这些人特有的属性和行为封装起来来描述人,由此可见,类实质上就是封装对象属性和行为的载体,而对象则是类抽出来的一个实例。
2.类
类就是同一类事物的总称,比如我这个对象可以讲话,那么基本上所有人都具备这个属性,就将我这一类的对象称为类,类的思想就是这样产生的。更恰当的描述:类就是世间事物的抽象称呼,而对象就是这个事物相对应的实体,人类就是一个类,写博文的我,看博文的你就是人类这个类的实例化,这也是为什么人类里面有个类,动物类,植物类,都有一个类,单说一个动物类,我们只能知道是动物,,却无法确定是那种动物,而对象就是具体实例化动物。在java语言中,类中对象的行为是以方法的形式定义的,对象的属性是以成员变量的形式定义的,而类包括对象的属性和方法
3.封装
面向对象程序设计具有:封装性,继承性,多态性。
封装是面向对象编程的核心思想。将对象的属性和行为封装起来,其载体就是类,类通常对客户隐藏其实现细节,这就是封装的思想,就比如我们使用一个库函数时,我们只需要知道它的作用就可以了,没必要去了解它的内部工作,比如print函数,我们只需要知道用它可以输出我们我们想输出的内容即可,更通俗的讲,我们只需要写完博文点击发布就可以,而不用去管它如何上传至互联网,采用封装的思想保证了类内部数据结构的完整性,使用该类的用户不能轻易地直接操作此数据结构,只能执行类允许公开的数据,这也就避免了外部操作对内部数据的影响,提高了程序的可维护性。
4.继承
类和类之间具有关系,比如老师类和学生类,学电脑的一类人和学英语的一类人,当处理一个问题时,我们可以将一些有用的类保留下来,在遇到同样的问题时拿来复用,做一个不恰当的比喻,学电脑的现在要读一篇英文文章,假设他们英语很烂,这时应该想到学英语的人,我们可以使用学英语这类人特殊的属性,我们不看其他属性,我们只使用会英语这门属性,这样就节省了学电脑的还需要学习英语来读英语文章,这样就大大节省了学电脑的时间,这就是继承的基本思想,可见设计软件的代码时可以使用继承思想来缩短软件开发的时间,复用那些以前已经定义好的类,提高系统性能,减少系统在使用过程中出现错误的几率,这就是为什么有些人写完一个功能会把代码保存起来,下次需要这个需求,我们就可以拿来代码直接用。
在java中,人类这种大类被称为父类,而学习电脑,学习英语这几类人被称为子类,他们都是父类分离出来的,他们有着必然的联系,他们都是人
5.多态
多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)。根据调用对象的不同方法执行不同的内容,多态具体表现在重写和重载多态,就是类的多种表现方式比如同名不同参子类重写父类。重载发生在一个类中.重写发生在子类,意思就是子类重写父类相同名称的方法。
重载的特性:方法名相同.返回类型,传入方法的参数不同(包括个数和类型)。
重写的特性:方法名相同,返回类型,参数均相同,必须发生在子类。