面向对象编程的特性

一、接口

接口是把公共的方法与属性组合起来,以封装特定功能的集合。

接口不能单独存在,不能像实例化一个类一样实例化接口,且接口不能包含实现成员的任何代码,只能定义成员本身,

实现过程只能在实现接口的类中实现。

C#定义接口关键字为interface,

例如一个人事管理系统中员工接口类

1
2
3
4
5
public interface IEmployees
{
    string Name{ get; set;}
    decimal GetPay();
}

注意:接口中的成员不能有修饰符,因为默认都是公有的,同时不能声明虚拟与静态的,接口一般都以I开头

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
class Program
    {
        static void Main(string[] args)
        {
            IEmployees tempEmployees = new TempEmployees();
            tempEmployees.Name = "临时员工";
            IEmployees commonEmployees = new CommonEmployees();
            commonEmployees.Name = "普通员工";
            Console.Write("我是{0},工资为:{1}\n我是{2},工资为:{3}",tempEmployees.Name,tempEmployees.GetPay(),commonEmployees.Name,commonEmployees.GetPay());
            Console.ReadKey();
        }
    }
 
    public interface IEmployees
    {
        string Name { get; set; }
        decimal GetPay();
    }
 
    public class TempEmployees : IEmployees
    {
        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }
        public decimal GetPay()
        {
            return 30 * 7 + 10;
        }
    }
 
    public class CommonEmployees : IEmployees
    {
        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }
        public decimal GetPay()
        {
            return 30 * 30 + 100;
  
        }
    }

 

 

 

posted @   刘继先  阅读(330)  评论(0编辑  收藏  举报
编辑推荐:
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
阅读排行:
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥
点击右上角即可分享
微信分享提示