类和对象-封装-成员属性私有化

简介: 类和对象-封装-成员属性私有化
#include <iostream>
#include <string> 
using namespace std;
//成员属性私有化
//优点1:可以对成员进行读写权限控制 
//优点2:可以检测数据的有效性 
//代码演示: 
//定义一个人 类 
class person{
private ://成员属性私有化 
  string name;//姓名成员 
  string sex;//性别成员 
  int age;//年龄成员
public://但是需要提供一个对外的接口,对私有成员进行访问
     //姓名:可读可写
     //性别:只读 
     //年龄:只写 
  void setname(string Name)//写姓名(设置姓名) 
  {
    name=Name;  
  }
  string getname()//读姓名(获取姓名) 
  {
    return name;
  }
  string getsex()//读性别 (获取性别) 
  {
    sex="男";//先初始化一下,不然不便于获取 
    return sex;
  }
  void setage(int Age)//写年龄(设置年龄) 
  {
    if(Age<0||Age>150)//优点2:检测数据的有效性 
    {
      cout<<"年龄不合适"<<endl;  
      return ;
    } 
    age=Age; 
  }
}; 
int main(int argc, char** argv) {
  person p1;
  p1.setname("彭于晏");//对外接口:写姓名 
  cout<<p1.getname()<<endl; //对外接口:读姓名 
  cout<<p1.getsex()<<endl;//对外接口:读性别
  p1.setage(18);//对外接口:写年龄 
  return 0;
}
目录
相关文章
|
9月前
|
存储 Serverless 数据安全/隐私保护
C++ 类的成员函数和数据成员的技术性探讨
C++ 类的成员函数和数据成员的技术性探讨
130 0
|
9月前
|
设计模式 XML SQL
C++建造者模式解析:构建复杂对象的优雅方式
C++建造者模式解析:构建复杂对象的优雅方式
82 1
C++建造者模式解析:构建复杂对象的优雅方式
|
9月前
|
C# 开发者 索引
C# 11.0中的静态抽象成员:接口中的新变革
【1月更文挑战第25天】C# 11.0引入了接口中的静态抽象成员,这一新特性为接口设计带来了更大的灵活性。静态抽象成员允许在接口中定义静态方法和属性,并要求实现类提供具体的实现。本文将详细探讨C# 11.0中静态抽象成员的工作原理、优势及其对现有编程模式的影响,旨在帮助读者更好地理解和应用这一新特性。
|
存储 编译器 C++
【类和对象(中)】六大默认成员函数
前言 本文继类和对象上,开始讲述默认成员函数。 默认成员函数是:我们不具体写,编译器会自动生成的函数叫默认成员函数。 一、🌺构造函数(重点🌺) 构造函数是类的一个默认成员函数,它虽然叫构造函数,但它的作用并不是构造一个对象,而是初始化一个对象。 它与Init函数不同, 每次实例化一个新的对象都要调用 Init函数来完成对象的初始化,比较麻烦,而这个构造函数,可以解决这个问题。
类的内部成员之五:内部类
类的内部成员之五:内部类
47 1
|
设计模式 存储 Java
JAVA设计模式11:组合模式,以统一的方式处理单个对象和组合对象
JAVA设计模式11:组合模式,以统一的方式处理单个对象和组合对象
193 0
|
设计模式 Java 数据库连接
JAVA设计模式8:装饰模式,动态地将责任附加到对象上,扩展对象的功能
JAVA设计模式8:装饰模式,动态地将责任附加到对象上,扩展对象的功能
105 0
|
Java C++
面对对象三大特性:封装、继承、多态
面对对象三大特性:封装、继承、多态
18-类和对象-封装-成员属性私有化
18-类和对象-封装-成员属性私有化