`
zhangziyangup
  • 浏览: 1187149 次
文章分类
社区版块
存档分类
最新评论

C#基础知识整理:基础知识(9) 接口的应用

 
阅读更多

前面接触过接口的概念,其实接口就是一组方法、属性,然后谁继承了它,谁就要实现这组方法和属性。也就是说这个类具备了这个接口定义的一些能力。
接口的这种特性在平常的程序编写中是有很大作用的,往往完成一个大项目需要很多人同时完成,这样难免会有一些类都需要某些方法,而且执行流程都差不多。这是在项目设计阶段就有必要把这种方法抽象出一个接口,然后在项目中,大家只需实现这个接口,从而防止大家由于各自定义各自的,导致了相同的操作比较混乱。
比如,在做桌面应用程序时,会用到很多窗口,窗口里会注册事件(这一般用于不同控件间事件传递),还会贴皮肤(即取图片作为窗体和窗体上的控件的背景图片)等等,这是每个窗口都需要用的方法。像这样就可以抽象出一个接口,命个名:
IWindowAdditionalAble。
比如在写UseForm窗口时实现该接口:

接口:

    interface IWindowAdditionalAble
    {
        void PasteSkin();//给窗体中的控件贴皮肤

        void RegisterEvent();//注册要用到的事件
    }

实现接口代码:

 public partial class UseForm : Form, IWindowAdditionalAble//每写一个窗体类都实现该接口
    {
        public UseForm()
        {
            InitializeComponent();

            PasteSkin();

            RegisterEvent();
        }

        #region IWindowAdditionalAble 成员

        /// <summary>
        /// 贴皮肤的方法
        /// </summary>
        public void PasteSkin()
        {
            this.btnTest.BackColor = Color.Gray;
        }
        /// <summary>
        /// 注册事件的方法
        /// </summary>
        public void RegisterEvent()
        {
            this.btnTest.Click += new EventHandler(btnTest_Click);
        }

        void btnTest_Click(object sender, EventArgs e)
        {
            throw new NotImplementedException();
        }

        #endregion
    }

在其他窗口A、B...时都实现这个接口,这样比较统一,也不会落下某一个方法。当然也可以根据项目的需求不同写一些其他满足某些需求的接口来使用。

分享到:
评论

相关推荐

    个人整理的C#教程知识手册

    一、C#基础 C#的基础部分涵盖了语法、变量、数据类型、控制结构(如if语句、switch语句、循环)、函数、类和对象等核心概念。理解这些基础知识是构建任何C#程序的基石。此外,手册可能还会涉及命名空间、接口、继承...

    C#常用知识整理

    以上就是C#常用的知识点,掌握这些基础知识将有助于你构建和维护高质量的C#应用程序。在实际编程过程中,还需要不断学习和理解更高级的主题,如并发处理、单元测试、设计模式等,以提升专业技能。

    C#-知识点整理总结.doc

    【C# 知识点整理总结】 C# 是一种由微软公司开发的现代、通用的、面向对象的编程语言,其设计目标是简洁、高效、易于学习,并且具有丰富的编程特性。C# 是基于 C 和 C++ 的,但与 Java 有许多相似之处,尤其在面向...

    C#知识点整理 教学程序

    C#是一种广泛应用于软件开发,尤其是Windows平台和游戏开发的强大编程语言。由微软公司开发,C#(读作"C Sharp")是.NET框架的核心部分,它结合了面向对象的编程特性,性能优化以及现代化的开发工具。对于初学者来说...

    文件整理基础部分C#代码

    【标题】"文件整理基础部分C#代码"的描述中提到了C#编程语言的应用基础知识,这可能包括了变量声明、数据类型、控制结构(如if语句、for循环、while循环)、函数定义与调用、类与对象、继承、接口、异常处理等核心...

    c#面试基础知识包 面试准备

    在面试中,对C#基础知识的掌握是评估候选人能力的重要环节。本资料包针对C#的基础知识进行了整理,涵盖了面试中常见的考点,以下是这些知识点的详细说明: 1. **C#语法基础** - 变量:包括数据类型(如int、float...

    C#学习知识库2.0版

    C#学习知识库2.0版是一个专门为学习C#设计的知识整理系统,旨在帮助初学者和有经验的开发者更好地理解和掌握C#的关键概念和特性。 1. **基础语法**: - 变量与数据类型:C#支持基本数据类型(如int, double, bool...

    C#笔记整理

    一、C#基础 1. 变量与数据类型:C#支持基本数据类型如int、float、double、bool,以及引用类型如string、object等。变量必须先声明后使用,遵循强类型检查。 2. 控制流:包括条件语句(if-else、switch)、循环...

    C#异步调用资料整理

    本资料整理中包含的两个HTML文件很可能是关于C#异步调用的教程或示例,可能涵盖了上述知识点的详细解释和代码示例。通过学习这些文件,你可以深入理解并掌握C#异步编程的核心概念,从而在实际项目中有效地应用异步...

    c#试题 基础测试

    从给定的C#基础测试题目中,我们可以总结出一系列重要的C#编程概念和知识点,这对于初学者理解和掌握C#语言的基本原理非常有帮助。以下是根据题目内容整理的关键知识点: ### 1. 抽象类与抽象方法 - **抽象类**:不...

    c#入门经典中文整理doc版全本

    1. **C#基础语法**:C#的基本结构包括变量、数据类型、常量、运算符等。变量用于存储数据,数据类型决定了变量可以存储的数据种类。运算符则用于处理这些数据,如算术运算符(+,-,*,/)和逻辑运算符(&&,||,!)...

    自己整理的C#面试题

    以下是我根据"自己整理的C#面试题"这个主题,结合C#的基础知识和常见面试题,为你详细解析的一些关键知识点: 1. **基础语法**:C#语法与C++和Java类似,但更注重安全性。包括变量声明(如int、string、bool等)、...

    C#工作中常用的基础知识面试题(二)

    【C#基础知识面试题解析】 在C#编程中,掌握基础是至关重要的,尤其是在面试时。以下是一些常见的C#面试问题及解答: 66. 软件开发过程一般有几个阶段?每个阶段的作用? 软件开发通常包括五个主要阶段: 1. 需求...

    C#相关API部分整理

    本文将深入探讨"C#相关API部分整理"中的关键知识点,包括W3CSchool的学习资源、Oracle数据库的交互以及.NET Framework 4.0类库。 首先,W3CSchool是一个知名的在线学习平台,提供了丰富的编程教程,包括C#。在这里...

    C# .net面试题整理集合

    【C# .NET面试题整理集合】 在C#和.NET技术领域中,面试通常会涵盖以下几个核心知识点: 1. **基础语法与数据类型**:理解C#的基本语法,包括变量声明、常量、数据类型(如int、string、bool、float等)以及它们的...

    c#的学习课件,平时比较常用的

    1. **C#基础**: - 变量与数据类型:C#支持多种数据类型,包括整型、浮点型、字符型、布尔型等,还有引用类型如类、接口、数组。 - 控制流:如条件语句(if-else)、循环(for、while、do-while)和开关语句...

    C#Primer的笔记整理

    理解这些基础知识对于编写任何C#程序都是至关重要的。 接着,`02 Class的设计.md`详细讲解了类的设计原理和实践。在C#中,类是面向对象编程的基础,它定义了一组属性(数据成员)和方法(行为),用于封装数据和...

    c#提纲学习精华笔记整理

    以下是对【标题】"c#提纲学习精华笔记整理"和【描述】中涉及的知识点的详细解释: 1. **控制台语句**: - `Write()`:在控制台上输出文本,但不会换行。 - `WriteLine()`:在控制台上输出文本,并在输出后自动...

    csharp教程知识手册整理CHM.zip_c sharp chm_c# chm_c# 教程.chm_luckytis_usin

    该压缩包中的"C#教程知识手册整理CHM"文件,包含了C#语言的各类核心概念和实战技巧。C#是由微软开发的一种面向对象的编程语言,广泛应用于桌面应用、游戏开发、移动应用以及Web服务等众多领域。C#语言的设计理念是...

Global site tag (gtag.js) - Google Analytics