C#简单继承示例详解——快速入门

简介: C#简单继承示例详解——快速入门

在面向对象当中继承是非常重要的,也是面向对象的三大特性之一(继承、封装、多态),今天我们来揭开他的神秘面纱。

话不多说,我们上菜。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
/**
 * 假设我们公司有两种程序员:
 * java程序员指的是用java语法写程序的程序员,用Jpro这个类表示;
 * C#程序员指的是用C#语法写程序的程序员,用Cpro这个类来表示。
 * 每个类都有一个WriteCode()方法。
 * 都属于程序员,用Programmer这个类表示。
 * 现在公司来了一个项目,要求派某个程序员写一个程序。
 */
namespace inheritApplication
{
    //程序员类(基类)
    class Programmer
    {
        public  string name = "我是程序员";
    }
    //java程序员类
    class Jpro 
    {
        public string name = "java程序员";
        public string language = "我用java语法写代码";
    }
    //C程序员类
    class Cpro 
    {
        public string name = "C#程序员";
        public string language = "我用C#语法写代码";
    }
    //编写项目类
    class Pro : Programmer  //继承基类
    {
        public void WriteProgram(Jpro program)  //继承java程序员类
        {
            Console.WriteLine("" + program.name + ":" + name + "," + program.language + "");
        }
        public void WriteProgram(Cpro program)
        {
            Console.WriteLine("" + program.name + ":" + name + "," + program.language + "");
        }
    }
    //主程序
    class Program
    {
        static void Main(string[] args)
        {
            Pro p = new Pro();
            Jpro p1 = new Jpro();
            p.WriteProgram(p1);
            Cpro p2 = new Cpro();
            p.WriteProgram(p2);
            Console.ReadKey();
        }
    }
}

写好代码后我们运行看看效果!

很显然看出来,公司两个程序员都继承了程序员类。

 

总结:

父类包含了多少内容,派生类(子类)全部接受(包括属性 字段 方法等),

可以重写覆盖,使用override重写,可以使用base调用父类中的内容。

继承可以减少代码的冗余,也为程序的修改提供了很大的方便之处。

当然,如果结合接口那就完美了,下一篇中我们将提到接口的实现。

相关文章
|
11月前
|
开发框架 安全 .NET
掌握 LINQ:通过示例解释 C# 中强大的 LINQ的集运算
通过本文的示例,我们详细介绍了C#中LINQ的强大集合运算功能。LINQ提供了一种简洁、灵活和类型安全的方式来查询和操作数据集合,从而大大提高了代码的可读性和可维护性。希望本文能帮助读者更好地掌握和应用LINQ,提高开发效率。
316 13
|
编译器 C#
C#多态概述:通过继承实现的不同对象调用相同的方法,表现出不同的行为
C#多态概述:通过继承实现的不同对象调用相同的方法,表现出不同的行为
285 65
C#正则表达式快速入门
C#正则表达式快速入门
135 9
|
API C#
异步轮询 Web API 的实现与 C# 示例
异步轮询 Web API 的实现与 C# 示例
428 1
|
安全 C#
C# 面向对象编程的三大支柱:封装、继承与多态
【9月更文挑战第17天】在C#中,面向对象编程的三大支柱——封装、继承与多态,对于编写安全、可维护、可复用的代码至关重要。封装通过访问修饰符和属性保护数据;继承允许子类继承父类的属性和方法,实现代码复用和多态;多态则提高了代码的灵活性和通用性。掌握这三大概念能显著提升C#编程能力,优化开发效率和代码质量。
311 3
|
存储 C#
C# 一分钟浅谈:继承与多态性的实践
【9月更文挑战第2天】本文从基础入手,详细介绍了面向对象编程中继承与多态性的核心概念。通过 `Animal`、`Dog` 和 `Cat` 类的示例代码,展示了如何利用继承重用代码及多态性实现不同对象对同一方法的多样化响应,帮助读者更好地理解和应用这两个重要概念,提升面向对象编程能力。
197 4
|
前端开发 程序员 API
从后端到前端的无缝切换:一名C#程序员如何借助Blazor技术实现全栈开发的梦想——深入解析Blazor框架下的Web应用构建之旅,附带实战代码示例与项目配置技巧揭露
【8月更文挑战第31天】本文通过详细步骤和代码示例,介绍了如何利用 Blazor 构建全栈 Web 应用。从创建新的 Blazor WebAssembly 项目开始,逐步演示了前后端分离的服务架构设计,包括 REST API 的设置及 Blazor 组件的数据展示。通过整合前后端逻辑,C# 开发者能够在统一环境中实现高效且一致的全栈开发。Blazor 的引入不仅简化了 Web 应用开发流程,还为习惯于后端开发的程序员提供了进入前端世界的桥梁。
2098 1
|
存储 算法 C++
Hash与布隆过滤器
Hash与布隆过滤器
188 0
Hash与布隆过滤器
C#中的类和继承
C#中的类和继承
118 6
|
XML 存储 缓存
C#使用XML文件的详解及示例
C#使用XML文件的详解及示例
686 0