OOP是什么:oop 是面向对象编程,面向对象编程是一种计算机编程架构,
OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或
对象组、合而成。
OOP有什么特性:
1、封装性:也称为信息隐藏,就是将一个类的使用和实现分开,只保留
部分接口和方法与外部联系,或者说只公开了一些供开发人员使用的方法
。于是开发人员只 需要关注这个类如何使用,而不用去关心其具体的实
现过程,这样就能实现 MVC 分工合作,也能有效避免程序间相互依赖,
实现代码模块间松藕合。
2、继承性:就是子类自动继承其父级类中的属性和方法,并可以添加新
的属性和方法或者对部分属性和方法进行重写。继承增加了代码的可重用
性。PHP 只支持单继承,也就是说一个子类只能有一个父类。
3、多态性:子类继承了来自父级类中的属性和方法,并对其中部分方法
进行重写。于是多个子类中虽然都具有同一个方法,但是这些子类实例化
的对象调用这些相同的方法后却可以获得完全不同的结果,这种技术就是
多态性。多态性增强了软件的灵活性。
使用OOP用什么好处:
1、易维护
采用面向对象思想设计的结构,可读性高,由于继承的存在,即使改变
需求,那么维护也只是在局部模块,所以维护起来是非常方便和较低成本
的。
2、质量高
在设计时,可重用现有的,在以前的项目的领域中已被测试过的类使系
统满足业务需求并具有较高的质量。
3、效率高
在软件开发时,根据设计的需要对现实世界的事物进行抽象,产生类。
使用这样的方法解决问题,接近于日常生活和自然的思考方式,势必提高
软件开发的效率和质量。
4、易扩展
由于继承、封装、多态的特性,自然设计出高内聚、低耦合的系统结构
,使得系统更灵活、更容易扩展,而且成本较低。
#include <iostream>
//结构体
//人的属性
//人的方法
struct Ren
{int HP;int MP;float x;float y;int DAGUAI() {return 1;}int ZOULU(int x,int y) {return 1;}
};int main()
{Ren xiaoli;xiaoli.HP = 100;xiaoli.MP = 99;xiaoli.x = 101;xiaoli.y = 200;xiaoli.DAGUAI();xiaoli.ZOULU(2000,5555);
}
类的创建:
//main.cpp
#include <iostream>
#include "Guaiwu.h"
//类 class 成员变量
//方法就是成员函数int main()
{Guaiwu xiaoli;xiaoli.HP = 100;xiaoli.MP = 99;xiaoli.x = 101;xiaoli.y = 200;xiaoli.DAGUAI();xiaoli.ZOULU(2000,5555);
}
//Guaiwu.h
#pragma once
class Guaiwu
{
public: // 公共的 private:私有的int HP;int MP;float x;float y;int DAGUAI();int ZOULU(int x, int y);
};
//Guaiwu.cpp
#include "Guaiwu.h"
int Guaiwu::DAGUAI()
{return 1;
}int Guaiwu::ZOULU(int x, int y)
{return 0;
}