C#接口在派生类和外部类中的调用方法示例
作者:Mr-Robot 发布时间:2021-06-13 07:54:43
标签:C#,接口
本文实例讲述了C#接口在派生类和外部类中的调用方法。分享给大家供大家参考,具体如下:
C#的接口通过interface关键字进行创建,在接口中可以包含属性,方法等成员变量。接口的派生类可以对接口中的方法进行实现。一个类可以继承多个接口对这些接口中的方法进行实现,一个接口也可以派生多个类接口中的方法可以由这些类中的一个或多个进行实现。在接口的派生类中可以直接调用接口中的方法。
在派生类中调用举例:
//接口
public interface IPersonalService
{
//接口中的方法
PersonalDTO QueryByUid(int uId);
}
//接口派生类
public class PersonalService : IPersonalService
{
//派生类中实现接口方法--隐式实现
public PersonalDTO QueryByUid(int uId)
{
return _dal.QueryByUid(uId);
}
//派生类中调用接口方法
public void GetInfo(int userId)
{
//调用方式一
IPersonalService p = new PersonalService();
PersonalDTO dto = p.QueryByUid(userId);
//调用方式二
PersonalService p2 = new PersonalService();
IPersonalService p3 = (IPersonalService)p2;
PersonalDTO dto = p3.QueryByUid(userId);
}
}
在外部类中调用一个接口的方法时先引用接口所在的命名空间而后的步骤和在接口的派生类中调用方式相同。
在外部类中引用接口所在的命名空间后声明一个接口类型的属性也可以调用该接口,如下。
public IPersonalService pService{get;set;}
public void getInfo()
{
pService.getInfo();
}
希望本文所述对大家C#程序设计有所帮助。


猜你喜欢
- 单选题:(每道题目2分)1. 下列哪个声明是错误的?(B) A. int i=10;B. float f=1.1;&
- 一:讲故事上一篇介绍的 6 个特性从园子里的反馈来看效果不错,那这一篇就再带来 6 个特性同大家一起欣赏。二:特性分析1. 像弱类型语言一样
- 手机一般有两种类型的输入设备。一种是键盘类型的输入设备,通常它包含电源键和音量下键。另一种是触摸类型的输入设备,触摸屏就属于这种类型。键盘类
- 一、什么是建造者模式建造者模式也称生成器模式 定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示(依赖倒转)产品
- 代码public class LamdaDemo{ public static void main( String[] args
- 1、文件分为ASCII文件和二进制文件,ASCII文件也称文本文件,由一系列字符组成,文件中存储的是每个字符的ASCII码值。2、FILE
- 本文实例讲述了Android开发之FloatingActionButton悬浮按钮基本使用、字体、颜色用法。分享给大家供大家参考,具体如下:
- 前言JVM是Java中比较难理解和掌握的一部分,也是面试中被问的比较多的,掌握好JVM底层原理有助于我们在开发中写出效率更高的代码,可以让我
- 依赖<dependency> <groupId>io.springfox</groupId> <a
- 1.项目介绍本项目旨在打造一个基于RBAC架构模式的通用的、并不复杂但易用的权限管理系统。通过本项目可以较好的理解权限系统的常见业务同时学习
- 创建自定义启动器0、项目总览1、创建项目,引入依赖创建项目 spring-boot-jdbc-starter,引入依赖,pom文件如下:&l
- 一:回顾反射机制这种重点回顾一下反射Method!为什么要回顾反射机制呢?因为我们后面要手写一个简易的Spring框架,便于我们理解其中的核
- 最近几个项目的测试结果,Android无法主动通过调用 webview.loadUrl("javascript:"+ca
- 一、 通过JDK网络类Java.net.HttpURLConnection1.java.net包下的原生java api提供的http请求使
- 前言偶然逛国外博客,看到了一个介绍文字动画的库,进入 pub 一看,立马就爱上这个动画库了,几乎你能想到的文字动画效果它都有!现在正式给大家
- 一. 概述参考开源项目https://github.com/xkcoding/spring-boot-demo在系统运维中, 有时候为了避免
- 本文实例为大家分享了Android检测手机多点触摸点数的具体代码,供大家参考,具体内容如下说明:手指每点击一个地方,在那个地方就画一个圆第一
- 本篇内容通过操作软键盘的函数着手详细分析了隐藏或者显示软键盘的实现方法,并且对其中重要的代码做了详细分析。一、开篇如果有需要用到输入的地方,
- 一、注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configura
- 序列化与反序列化Java对象是有生命周期的,当生命周期结束它就会被回收,但是可以通过将其转换为字节序列永久保存下来或者通过网络传输给另一方。