码迷,mamicode.com
首页 > Windows程序 > 详细

【学习笔记】C# 接口

时间:2017-07-26 20:18:18      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:set   ring   div   接口   苹果   children   value   oid   bsp   

  • 使用interface关键字定义接口
  • 接口定义一组成员但不直接实现它们
  • 实现接口
    • 实现接口的任何类都必须实现其所有的成员方法
    • 接口不能直接实例化
    • 接口可以包含方法和属性声明,不能包含字段
    • 接口中所有属性和方法默认为public
    • 一个子类可以继承一个父类的同时,实现多个接口
  •   
     1 using System;
     2 
     3 namespace InterfaceDemo
     4 {
     5     //食物接口
     6     public interface Food
     7     {
     8         //在接口中定义属性,属性也不能实现
     9         float price { set; get; }
    10 
    11         //在接口中,定义方法
    12         //1. 不能添加访问修饰符,默认都是public 
    13         //2. 在接口中的方法不能实现
    14         void Eat();
    15     }
    16     public interface B
    17     {
    18 
    19     }
    20     //苹果类
    21     //Apple继承于A类,并且实现了Food接口和B接口
    22     //3. 一旦某个类实现了接口,就必须实现接口中定义的全部成员
    23     public class Apple : Food, B
    24     {
    25         public float price
    26         {
    27             get
    28             {
    29                 return 1.5f;
    30             }
    31             set
    32             {
    33                 this.price = value;
    34             }
    35         }
    36         //实现了 Food 接口中的 Eat 方法
    37         public void Eat()
    38         {
    39             Console.WriteLine("吃下苹果后,hp + 10");
    40         }
    41     }
    42 
    43     public class Banana : Food, B
    44     {
    45         public float price
    46         {
    47             get
    48             {
    49                 return 3.8f;
    50             }
    51             set
    52             {
    53                 this.price = value;
    54             }
    55         }
    56         //实现了 Food 接口中的 Eat 方法
    57         public void Eat()
    58         {
    59             Console.WriteLine("吃下香蕉后,hp + 12");
    60         }
    61     }
    62     class Program
    63     {
    64         static void Main(string[] args)
    65         {
    66             Apple a = new Apple();
    67             a.Eat();
    68 
    69             Console.WriteLine(a.price);
    70 
    71             //多态--使用接口实现的多态
    72             Food b = new Apple();
    73             b.Eat();
    74 
    75 
    76             Banana ba = new Banana();
    77             ba.Eat();
    78             Console.WriteLine(ba.price);
    79             //4. 不能够直接实例化接口
    80             //Food f = new Food();
    81         }
    82     }
    83 }

     

【学习笔记】C# 接口

标签:set   ring   div   接口   苹果   children   value   oid   bsp   

原文地址:http://www.cnblogs.com/stardream19/p/7241482.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!