面向对象
面向对象程序语言的特点:
1.抽象,
2.封装,
3.继承,
4.多态
类,对象和成员的使用方法及区别:
声明一个类:
class 人类
{
public:
void 获得身高();
void 获得体重();
private:
int 身高;
int 重量;
};
类的命名习惯:
上面代码是错误的,因为C++编译器不允许用中文命名类,成员函数和变量
class Human//类名首字母要大写;
{
public:
void GetStature();//成员函数如果是两个单词组合的,每个单词首字母大写
void get_height();//也可以是下划线
private:
int stature;//变量名用小写
int height;
};
定义一个对象:
类+对象名;
如:Huam Mike;
类和对象的区别:
对象和成员的关系:
对象只能调用类中的成员:
#include<iostream>
using namespace std;
class Human
{
public:
void GetStature(){cout<<"获取升高中:";}
void GetHeight(){cout<<"获取体重中:";}
};
int main()
{
Human Tom;
Tom.GetHeight();
printf("\n");
Tom.GetStature();
}
公有:
#include<iostream>
using namespace std;
class Human
{
public:
int weight;
};
int main()
{
Human Tom;
Tom.weight=5;
cout<<"汤姆的体重为"<<Tom.weight<<endl;
Human Mike;
Mike.weight=6;
cout<<"麦克的体重为"<<Mike.weight<<endl;
}
私有:
如果把上述代码的 public:删去,程序会报错,因为类的成员默认为私有,私有成员不能被对象直接访问,只能通过类中的接口函数来访问
要解决这个报错,就要在类中设置一个公有的接口函数,类的对象通过这个接口h函数才能访问私有成员;
#include<iostream>
using namespace std;
class Human
{
public:
void set(int w)//int w用以接受参数;
{
weight=w;
}//公有接口函数
int print(){
return weight;
}//返回值
private:
int weight;
};//设置私有变量
int main()
{
Human Tom;
Tom.set(5);
cout<<"汤姆的体重为"<<Tom.print()<<endl;
Human Mike;
Mike.set(6);
cout<<"麦克的体重为"<<Mike.print()<<endl;
return 0;
}