• 5.对象类与继承(C++学习笔记)


    OOP(面向对象编程系统)

    面向对象编程是一种使用类和对象来设计程序的方法或范例。 它通过提供一些简化了软件开发和维护的概念:

    • 对象(任何具有状态和行为的实体都称为对象)
    • 类(对象的集合称为类。 它是一个逻辑实体)
    • 继承(当一个对象获取父对象的所有属性和行为,称为继承。 它提供代码可重用性。 它用于实现运行时多态性。)
    • 多态(当一个任务通过不同的方式执行时,即被称为多态性。在C++中,我们使用函数重载和函数重写来实现多态。)
    • 抽象(隐藏内部细节和显示功能被称为抽象。在C++中,使用抽象类和接口来实现抽象。)
    • 封装(将代码和数据绑定(或包装)在一起成为单个单元称为封装。)

    OOP相对于面向过程的编程语言的优点

    • OOP(面向对象)使开发和维护变得更容易,因为在面向过程的编程语言中,如果代码随着项目规模的增长而增长,就不容易管理。

    • OOP(面向对象)提供数据隐藏,而在面向过程的编程语言中,可以从任何地方访问全局数据。

    • OOP(面向对象)提供更有效地模拟真实世界事件的能力。 如果我们使用面向对象的编程语言,就可以提供真实世界里的问题的解决方案

    C++对象和类

    (注意:在C++中,对象是一组相似的类。 它是一个模板,用于从中创建对象。 它可以有字段,方法,构造函数等。)

    C++ this指针

    在C++编程中,this是一个引用类的当前实例的关键字。 this关键字在C++中可以有3个主要用途。

    1. 用于将当前对象作为参数传递给另一个方法。
    2. 用来引用当前类的实例变量。
    3. 用来声明索引器。

    C++ static关键字

    在C++中,static是属于类而不是实例的关键字或修饰符。 因此,不需要实例来访问静态成员。 在C++中,static可以是字段,方法,构造函数,类,属性,操作符和事件。

    C++ static关键字的优点

    内存效率: 现在我们不需要创建实例来访问静态成员,因此它节省了内存。 此外,它属于一种类型,所以每次创建实例时不会再去获取内存。

    C++静态字段

    使用static关键字声明字段称为静态字段。它不像每次创建对象时都要获取内存的实例字段,在内存中只创建一个静态字段的副本。它被共享给所有的对象。


     

    C++结构体

    在C++中,类和结构体(struct)是用于创建类的实例的蓝图(或叫模板)。结构体可用于轻量级对象,如矩形,颜色,点等。

    与类不同,C++中的结构体(struct)是值类型而不是引用类型。 如果想在创建结构体之后不想修改的数据,结构体(struct)是很有用的。

     

    C++枚举

    C++中的枚举是一种包含固定常量的数据类型。

    枚举可以用于星期几(SUNDAYMONDAYTUESDAYWEDNESDAYTHURSDAYFRIDAYSATURDAY),方向(NORTHSOUTHEASTWEST等)。C++枚举常量是静态和最终隐式。

    C++枚举可以认为是具有固定的常量集合的类。

    C++中枚举注意事项

    • 枚举提高了类型安全性
    • 枚举可以很容易地在switch语句块中使用
    • 枚举可以遍历
    • 枚举可以有字段,构造函数和方法
    • 枚举可以实现许多接口,但不能扩展任何类,因为它在内部扩展Enum


    C++友元函数

    如果一个函数在C++中定义为一个友元(使用friend作为修辞符)函数,那么可以使用该函数访问类的protectedprivate数据。

    通过使用friend关键字,编译器知道给定的函数是一个友元函数。为了访问数据,友元函数的声明应该在以关键字friend开头的类的主体内部进行。



     
     

    C++继承

    在C++中,继承是一个对象自动获取其父对象的所有属性和行为的过程。 在示例方式中,您可以重用,扩展或修改在其他类中定义的属性和行为。

    在C++中,继承另一个类的成员的类称为派生类,其成员被继承的类称为基类。 派生类是基类的子类。

    C++继承的优点

    代码可重用性:现在可以重用父类的成员。 因此,不需要再次定义那些跟父类成员。 因此在类中需要较少的代码,提高了代码的重用。

    例:

    C++多级继承示例

    当一个类继承一个被另一个类继承的类时,它被称为C++中的多级继承。 继承是传递的,所以最后的派生类获取所有其基类的所有成员。



     

    C++聚合 

    在C++中,聚合是一个进程,一个类将另一个类定义为实体引用(一个类作为另一个类的成员)。 这是另一种重用类的方法。 它是一种表示HAS-A关系的关联形式。

    C++聚合示例

    下面来看看一个聚合的例子,其中Employee类有Address类的引用作为数据成员。 这样,它可以重用Address类的成员。



  • 相关阅读:
    SPOJ
    hdu1298(字典树)
    hdu1247(字典树)
    hdu1075(字典树)
    Redisson教程
    Redisson官方文档
    Springboot 防止XSS攻击,包含解决RequestBody 的Json 格式参数
    防止XSS脚本注入-前端vue、后端springboot
    在Intellij IDEA中使用Debug
    使用Hibernate-Validator优雅的校验参数
  • 原文地址:https://www.cnblogs.com/jayYuan/p/14507336.html
Copyright © 2020-2023  润新知