一,面向对象的思想 就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征,行为特征抽象出来,描述成计算机事件的设计思想,它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步的去操作实现。
面向对象和该过程的区别:面向对象强调对象。面向过程强调步骤
特点:面向对象是一种更符合我们思考的思想,它可以将复杂的事情简单化,并将我们从执行者变成了指挥者。面向对象的语言中,包含了三大基本特征,即封装继承和多态
二,类和对象的概念 什么是类: 类是一组相关属性和行为的集合 可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述改了类事物。
什么是对象:对象是一类事物的具体体现,对象是类的一个实例,你找到对象就是人类的一个具体示例,必然具备该事物的属性和行为,现实中,一类事物的一个实例
三,继承
简单地说就是一种层次模型,这种层次模型能够被重用。层次结构的上层具有通用性,但是下层结构则具有特殊性。在继承的过程中类则可以从最顶层的部分继承一些方法和变量。类除了可以继承以外同时还能够进行修改或者添加。通过这样的方式能够有效提高工作效率
四,接口
接口:在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。
1.接口中不能有成员变量;
2.接口中一班定义的是抽象方法;JDK8开始可以定义默认方法和静态方法JDK9可以定义私有方法;
3.通过定义接口,就相当于定义一种规范或者约束,实现接口的子类必须重写接口定义的抽象方法,或者定义为抽象
多态
多态是指同一行为具有多个不同的表达形式(调用同样的方法,执行的是不同的功能)
1.发生在有继承或者实现接口的情况下
2.在子类中对方法进行了重写
3.父类引用指向子类对象 父类类型 变量名=new 子类对象();
**多态的好处:在开发中可以把父类(接口类型)类型定义为方法的形象,在实际调用的时候传入的实际参数就比较灵活,可以传入父类类型形象,也可以传入任意一个子类的对象
//向上转型是自动转换,不会存在问题
Animal a=new Cat();
a.call();
//向下转型是强制转换,可能存在问题
Cat c=(Cat) new Animal();
c.sleep();