什么是抽象类,抽象方法,虚函数
2025-01-27 14:06 钟铧若岩 阅读(16) 评论(0) 编辑 收藏 举报抽象类
定义
C# 示例
// 定义抽象类 abstract class Shape { // 抽象方法 public abstract double Area(); // 非抽象方法 public void Display() { Console.WriteLine("This is a shape."); } } // 继承抽象类并实现抽象方法 class Circle : Shape { private double radius; public Circle(double r) { radius = r; } public override double Area() { return Math.PI * radius * radius; } } class Program { static void Main() { // Shape shape = new Shape(); // 错误,抽象类不能实例化 Circle circle = new Circle(5); Console.WriteLine("Circle area: " + circle.Area()); circle.Display(); } }
C++ 示例
#include <iostream> // 定义抽象类 class Shape { public: // 纯虚函数,使类成为抽象类 virtual double Area() = 0; // 普通成员函数 void Display() { std::cout << "This is a shape." << std::endl; } }; // 继承抽象类并实现纯虚函数 class Circle : public Shape { private: double radius; public: Circle(double r) : radius(r) {} double Area() override { return 3.14 * radius * radius; } }; int main() { // Shape shape; // 错误,抽象类不能实例化 Circle circle(5); std::cout << "Circle area: " << circle.Area() << std::endl; circle.Display(); return 0; }
抽象方法
定义
C# 示例
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」