C++面向对象(oop) 如何用oop编程
(1)如何用OOP编程?
OOP语言的四大特征是什么?抽象 封装(隐藏) 继承 多态
怎么体现封装(隐藏):通过类的访问限定符:public 共有的 private 私有的 protected 保护的
在C中:定义各种各样的函数,struct可以自定义类型
在C++中:输出各种各样的类。类(给用户自定义类型的,描述为实体的抽象类型)在计算机世界里面的类来代表现实世界的实体的抽象类型。
用OOP的思想解决问题:
1、先找实体;
2、然后根据下面这个思维图,编写代码
ADT表示实体的抽象数据类型,分析出实体它有什么属性什么行为
在计算机的类里面,从实体属性得到的东西是类的成员变量;从实体行为得到的东西是类的成员方法。类并不代表实体,而是实体的ADT。
当我用这个类型去实例化对象后(对象是占栈内存空间的,就类似实体在现实世界里面占据空间是一样的), 对象在逻辑意义上来代表现实世界中的实体
注意:
计算机语言也讲究语言美,在命名类时统一采取,驼峰式命名;
调用成员方法时,C语言直接调用就好show(),C++还要加对象名good.show();
类型不占空间,用内存定义了对象才占用(栈)空间
const int NAME_LEN = 20;
//
class Goods //=》商品数据化类型,类型不占空间,用内存定义了对象才占用(栈)空间
{
public://给外部提供共有的方法,来访问实体私有的属性
void init(const char *name, double price, int amount);
//打印商品信息
void show();
//定义类成员方法,可以在类体内;处理时,自动处理成inline内联函数(复习)
//给成员变量提供一组getXXX或setXXX的方法,使我们在外部调用这些接口后,就可以对相应的成员变量进行赋值。
void setName(char *name) {
strcpy(_name, name); }</