什么是面向对象
把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象。对同类对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理.
面向对象和面向过程的区别
1.面向对象
优点:易维护,易服用,易扩展,面向对象具有封装,继承多态的特性,可设计很多低耦合的系统
缺点;性能低
2.面向过程:
优点是性能比面向对象高,面向对象中的类在调用时需要实例化,占用内存大,消耗资源
缺点:没有面向对象那样更好维护
面向对象特性
1.抽象
抽象是把对象的共同特点构造出一个类,它又包括数据抽象和行为抽象,抽象只在乎对象的属性和方法,不在乎方法的具体实现
2. 封装
隐藏对象的属性和实现方法,但是对象可以调用它,安全性高
3. 继承
通俗的说就是子类继承父类,必须使用extends关键字去继承父类,子类拥有父类的公开方法和实现,不能使用private关键字修饰的属性和方法,子类可以拥有自己的属性和方法,子类可以重写父类的方法.
4,多态
所谓多态就是在程序中定义的引用变量所指向的具体类型和通过该引用变量调用的方法不确定,只有在程序运行时才确定,.就说一个引用变量到底指向那个类的实例,调用方法具体是哪个类的方法不确定,
它的好处就是在程序运行时才会确定引用那个类的对象,这样就不用修改代码,让程序具备多个运行状态,这就是多态.
当超类对象引用变量引用子类对象时,被引用对象的类型而不是引用
- 继承:在多态中必须存在有继承关系的子类和父类
- 重写:子类对父类的方法重写,调用方法时就会调用子类的方法
- 向上转型:在多态中需要将子类的引用给父类对象,这样才可以调用父类和子类的方法.