zoukankan      html  css  js  c++  java
  • c++——类和对象初探

    2.1 基本概念

    1)类、对象、成员变量、成员函数

    2)面向对象三大概念

    封装、继承、多态

    3)编程实践

             类的定义和对象的定义,对象的使用

             求圆形的面积

             定义Teacher类,打印Teacher的信息(把类的声明和类的实现分开)

    2.2类的封装

    1)封装(Encapsulation

    A)封装,是面向对象程序设计最基本的特性。把数据(属性)和函数(操作)合成一个整体,这在计算机世界中是用类与对象实现的。

    B)封装,把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

             备注:有2层含义(把属性和方法进行封装 对属性和方法进行访问控制)

             C++中类的封装

    成员变量,C++中用于表示类属性的变量

    成员函数,C++中用于表示类行为的函数

    2)类成员的访问控制

    在C++中可以给成员变量和成员函数定义访问级别

    Public修饰成员变量和成员函数可以在类的内部和类的外部被访问

    Private修饰成员变量和成员函数只能在类的内部被访问

    //类是把属性和方法封装 同时对信息进行访问控制

    //类的内部,类的外部

    //我们抽象了一个类,用类去定义对象

    //类是一个数据类型,类是抽象的

    //对象是一个具体的变量。。占用内存空间。

    class Circle

    {

    public:

             double r;

             double s;

    public:

             double getR() 

             {

                       a++;

                       return r;

             }

             void setR(double val)

             {

                       r = val;

             }

    public:

             double getS() //增加功能时,是在修改类, 修改类中的属性或者是方法

             {

                        s = 3.14f*r*r;

                        return s;

             }

    //private:

             int a;

    };

    3struct和class关键字区别

    在用struct定义类时,所有成员的默认属性为public

    在用class定义类时,所有成员的默认属性为private

  • 相关阅读:
    C. 1D Sokoban 二分,思维
    E. Almost Fault-Tolerant Database 暴力枚举 + 分类讨论 + 思维 Codeforces Round #704 (Div. 2)
    Tkinter(六):Checkbutton 复选按钮
    LeetCode260. 只出现一次的数字 III
    LeetCode297. 二叉树的序列化与反序列化
    LeetCode300. 最长上升子序列
    LeetCode299. 猜数字游戏
    LeetCode295. 数据流的中位数
    你真的知道嵌入式系统的优先级吗?
    学习4412开发板gdb和gdbserver的调试
  • 原文地址:https://www.cnblogs.com/long5683/p/9772887.html
Copyright © 2011-2022 走看看