unity3D-游戏/AR/VR在线就业班 蓝鸥C#入门接口学习笔记

unity3D-游戏/AR/VR在线就业班 蓝鸥C#入门接口学习笔记


一、实现接口

实现接口的任何类都必须实现其所有的成员方法

接口不能直接实例化

接口可以包含方法和属性声明,不能包含字段

即可中所有属性和方法默认为public

一个子类可以继承一个父类的同时,实现多个接口

using System;

namespace Lesson_20
{
    public  class A{

    }
    
    //食物接口
    public interface Food{

        //在接口中定义属性,属性也不能实现
        float Price{ get ;}

        //在接口中定义方法
        //1、不能添加访问修饰符,默认都是public
        //2、在接口中的方法不嗯给你实现

        void Eat();
        
    }

    //苹果类
    //Apple继承于A类,并且实现了Food接口
    //3、一旦某个类实现了接口,就必须实现接口中定义的全部成员
    public class Apple:A,Food{
        public float Price {
            get {
                return 1.4f;
            }
        }

        public void Eat ()
        {
            //实现了Food接口中的Eat方法
            Console.WriteLine("吃下苹果后:HP+10");
        }

    }

    public class Banana:Food{

        public void Eat ()
        {
            Console.WriteLine ("吃下香蕉后:HP-10");
        }
        public float Price {
            get {
                return 5.6f;
            }
        }
            
    }
    class MainClass
    {
        public static void Main (string[] args)
        {
            Apple a = new Apple ();
            a.Eat ();
            Console.WriteLine (a.Price);

            //多态——使用接口实现的多态(多态使用抽象,虚方法)
            Food b = new Apple ();
            b.Eat ();
            Console.WriteLine (b.Price);

            Banana banana = new Banana ();
            banana.Eat ();

            //4、不能够直接实例化接口 ,不能这样用Food f =new Food();
//            Food f =new Food();

        }
    }
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值