- 浏览: 119839 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
ulric:
第一个函数的for循环应该从0开始
判断一个字符串是否为回文 -
ocaicai:
c语言的影子比较重啊!呵呵O(∩_∩)O~
java实现约瑟夫环问题 -
烟的傀儡:
通俗易懂!!太棒了
java实现约瑟夫环问题 -
eachcan:
中等什么意思?非常小是多大?写文章请负点责任。
基础知识:MySQL数据类型及列类型 (1) -
rorely:
谢谢,少加了一个条件。呵呵。更正好了
编程实现“加3减3乘3除3”
■接口:使用关键字interface,只是定义一系列的行为类型,不提供任何实现
interface IMovable{
float speed{get;}
float maxSpeed{get;set;}
void Run();
void Walk();
void Fly();
}
■接口的实现,通过冒号来实现
一个类可以实现多个接口。如有两个接口IMovable,ISpeakable,定义一个Person类来实现这两个接口
class Person:IMovable,ISpeakable
interface IMovable{
float speed{get;}
float maxSpeed{get;set;}
void Run();
void Walk();
void Fly();
}
■接口的实现,通过冒号来实现
<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace useInterface
{
interface IMovable {
float Speed{get;}
float MaxSpeed { get; set; }
void Run();
void Walk();
void Fly();
}
class Dog : IMovable {
public float Speed {
get {
return 10.5f;
}
}
private float _MaxSpeed;
public float MaxSpeed{
get { return this._MaxSpeed; }
set { this._MaxSpeed = value; }
}
public void Run() {
System.Console.WriteLine("Dog is running");
}
public void Walk()
{
System.Console.WriteLine("Dog is walking");
}
public void Fly()
{
System.Console.WriteLine("Dog can't fly");
}
}
class Person : IMovable
{
public float Speed
{
get
{
return 20.5f;
}
}
private float _MaxSpeed;
public float MaxSpeed
{
get { return this._MaxSpeed; }
set { this._MaxSpeed = value; }
}
public void Run()
{
System.Console.WriteLine("Person is running");
}
public void Walk()
{
System.Console.WriteLine("Person is walking");
}
public void Fly()
{
System.Console.WriteLine("Person flies with a plane");
}
}
class Program
{
static void SthMove(IMovable mov) {
string type = mov.GetType().Name;
System.Console.WriteLine("This is a {0} ",type);
System.Console.WriteLine("{0}.Speed={1}",type,mov.Speed);
System.Console.WriteLine("{0}.MaxSpeed={1}", type, mov.MaxSpeed);
mov.Walk();
mov.Run();
mov.Fly();
}
static void Main(string[] args)
{
Person aPerson = new Person();
aPerson.MaxSpeed = 50;
SthMove(aPerson);
IMovable mov = new Dog();
mov.MaxSpeed = 20;
SthMove(mov);
System.Console.ReadLine();
}
}
}
结果:
This is a Person
Person.Speed=20.5
Person.MaxSpeed=50
Person is walking
Person is running
Person flies with a plane
This is a Dog
Dog.Speed=10.5
Dog.MaxSpeed=20
Dog is walking
Dog is running
Dog can't fly
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace useInterface
{
interface IMovable {
float Speed{get;}
float MaxSpeed { get; set; }
void Run();
void Walk();
void Fly();
}
class Dog : IMovable {
public float Speed {
get {
return 10.5f;
}
}
private float _MaxSpeed;
public float MaxSpeed{
get { return this._MaxSpeed; }
set { this._MaxSpeed = value; }
}
public void Run() {
System.Console.WriteLine("Dog is running");
}
public void Walk()
{
System.Console.WriteLine("Dog is walking");
}
public void Fly()
{
System.Console.WriteLine("Dog can't fly");
}
}
class Person : IMovable
{
public float Speed
{
get
{
return 20.5f;
}
}
private float _MaxSpeed;
public float MaxSpeed
{
get { return this._MaxSpeed; }
set { this._MaxSpeed = value; }
}
public void Run()
{
System.Console.WriteLine("Person is running");
}
public void Walk()
{
System.Console.WriteLine("Person is walking");
}
public void Fly()
{
System.Console.WriteLine("Person flies with a plane");
}
}
class Program
{
static void SthMove(IMovable mov) {
string type = mov.GetType().Name;
System.Console.WriteLine("This is a {0} ",type);
System.Console.WriteLine("{0}.Speed={1}",type,mov.Speed);
System.Console.WriteLine("{0}.MaxSpeed={1}", type, mov.MaxSpeed);
mov.Walk();
mov.Run();
mov.Fly();
}
static void Main(string[] args)
{
Person aPerson = new Person();
aPerson.MaxSpeed = 50;
SthMove(aPerson);
IMovable mov = new Dog();
mov.MaxSpeed = 20;
SthMove(mov);
System.Console.ReadLine();
}
}
}
结果:
This is a Person
Person.Speed=20.5
Person.MaxSpeed=50
Person is walking
Person is running
Person flies with a plane
This is a Dog
Dog.Speed=10.5
Dog.MaxSpeed=20
Dog is walking
Dog is running
Dog can't fly
一个类可以实现多个接口。如有两个接口IMovable,ISpeakable,定义一个Person类来实现这两个接口
class Person:IMovable,ISpeakable
发表评论
-
程序结构--the beginning of learning CSharp
2009-10-25 14:46 0属性文件夹Properties 引用文件夹:提供项目中引用到的 ... -
C# 各种数据类型的最大值和最小值常数
2009-10-25 16:01 0<!--<br /> <br /> ... -
foreach遍历数组元素
2009-10-25 16:22 0<!--<br /> <br /> ... -
C# 类属性的访问器,get与set的定义
2009-10-25 18:50 0<!--<br /> <br /> ... -
C# 类属性的访问器,get与set传统做法,同java
2009-10-25 18:52 0<!--<br /> <br /> ... -
C#类索引器的使用
2009-10-25 22:51 0<!--<br /> <br /> ... -
静态成员
2009-10-25 23:13 0静态成员通过点运算符来访问,但是不能通过对象访问,只能通过类名 ... -
继承,用冒号实现
2009-10-25 23:33 0■构造顺序:子类对象在创建时,构造函数的调用顺序是:首先调用父 ... -
C# 函数重载
2009-10-26 14:07 0方法重载,在C#中通过虚函数来实现,具体做法:现在父类中用vi ... -
C# 函数覆盖
2009-10-26 15:57 0覆盖类成员:通过new关键字修饰虚函数表示覆盖该虚函数。 一个 ... -
C#函数委托
2009-10-26 15:59 0委托是一种动态调用函数的方式,通过委托可以将一些相同类型的函数 ... -
C#事件
2009-10-26 16:31 0■事件:事件是一种函数回调机制,它通过委托来实现函数回调。 使 ... -
C# 接口
2009-10-26 18:21 0■接口:使用关键字inte ... -
C#异常
2009-10-26 18:47 0<!--<br /> <br /> ... -
异常类Exception
2009-10-26 19:06 0<!--<br /> <br /> ... -
C# 匿名类的定义
2009-10-26 20:00 0■匿名类:匿名类用来表示临时使用的只读数据,所以必须在创建时初 ... -
程序结构--the beginning of learning CSharp
2009-10-25 14:46 500属性文件夹Properties 引用文件夹:提供项目中引用到的 ... -
C# 各种数据类型的最大值和最小值常数
2009-10-25 16:01 2849<!--<br /> <br /> ... -
foreach遍历数组元素
2009-10-25 16:22 747<!--<br /> <br /> ... -
C# 类属性的访问器,get与set的定义
2009-10-25 18:50 1642<!--<br /> <br /> ...
相关推荐
### C#接口的作用详解 #### 一、引言 在软件开发中,接口是一个非常重要的概念,尤其是在面向对象编程语言中。本文将详细介绍C#中的接口及其作用,并通过实例来帮助理解接口的重要性和使用方法。 #### 二、什么是...
在这个"**c#接口调用案例**"中,我们将探讨如何创建接口,实现接口,并在实际应用中调用接口方法。 首先,接口通过`interface`关键字声明,它只包含方法签名、属性和事件,而不包含任何实现细节。例如: ```csharp...
本示例将重点关注"C#接口对接",特别是通过Web Service实现的接口访问。C#是Microsoft开发的一种面向对象的编程语言,广泛用于构建Windows桌面应用、Web应用以及.NET框架下的服务。 **接口对接的概念** 接口对接是...
本文将深入探讨如何在Java中调用C#接口,以及涉及的相关技术栈。 1. **Java与C#的互操作性** Java和C#虽然都是高级编程语言,但它们属于不同的生态系统。为了实现跨平台交互,通常采用两种主要方式:Web服务(如...
本文将深入探讨C#接口的使用及其带来的好处。 首先,接口提供了多态性。多态性是面向对象编程中的一个重要特性,它允许不同类型的对象以相同的方式进行操作。在C#中,一个类可以实现多个接口,这就意味着该类可以...
### C#接口技术详解 #### 接口概览 接口在C#中扮演着关键角色,它是定义一种协定的方式,确保任何实现该接口的类或结构遵循特定的行为规范。接口的引入克服了C++中多继承带来的复杂性,提供了一种更加清晰、简洁的...
综上所述,C#接口是构建可扩展、灵活和规范化的软件系统的关键工具。理解和熟练使用接口,可以提高代码的复用性和可维护性,是成为优秀C#开发者不可或缺的技能。在实际项目中,我们应根据需求合理地利用接口,实现...
"c#接口的意义 学习心得 读书笔记" c#接口的意义是学习c#语言的重要部分,对于初学者来说,理解接口的概念和应用是非常重要的。本文将详细介绍c#接口的定义、特点、优点和实践经验,帮助读者更好地理解和使用接口。...
下面,我们将通过一个简单的例子深入理解C#接口的使用。 首先,我们来创建一个接口。接口名称通常以大写字母"I"开头,以示区别于类。例如,我们可以创建一个名为`IMyInterface`的接口: ```csharp public ...
C#接口实现案例 C#中的接口(Interface)是一种抽象类,定义了一组方法、属性、事件和索引器,但不提供实现。接口只能被继承和实现,不能被实例化。接口的主要作用是定义一个契约,规定了类或结构体必须提供的成员...
在这个名为"C#接口应用小程序"的项目中,我们可以深入理解接口的基本原理及其在实际编程中的应用。 接口(Interface)在C#中是一个纯抽象类型,它定义了一组方法签名,但不包含任何实现。类可以实现一个或多个接口...
本文将深入探讨C#接口技术的运用及其对完善面向对象编程的意义。 1. **接口的定义与使用** - 接口使用`interface`关键字来声明,它由一组公共成员(如方法、属性、索引器和事件)组成,这些成员默认都是抽象且公开...
### C#接口的基本概念 接口(Interface)是一种抽象类型,它定义了一组方法、属性、事件和索引器的签名。这些成员在接口中仅声明而不包含具体的实现。接口不能被实例化,但可以被类或结构体所实现。当一个类实现了...
总之,“学习c#接口的典型例子”这个资料包是学习和掌握C#接口的宝贵资源,它将帮助开发者更好地理解接口的概念,提高其在实际项目中的应用能力。通过实际编写和分析这些示例,学习者可以加深对接口的多态性和灵活性...
c#接口调试工具postman完整安装包,免安装
在C#编程语言中,接口(Interface)是一种特殊类型的类,它定义了一组成员,包括方法、属性、索引器和事件,但不提供具体的实现。接口的主要目的是为类或结构提供一种方式来声明它们支持特定的行为或特性,而无需...
用友U8二次开发记录应收应付com接口(vb.net to c# 接口)
总结来说,C#接口是一种重要的编程构造,它定义了一组方法、属性、事件和索引器的协议,类或结构通过实现接口来承诺实现这些成员。接口支持多重继承和多重实现,这增强了编程的灵活性和复用性。接口作为组件技术的一...
C#接口教程,供大家学习,当时的发生的发生的发生地方