默认计划
15746人加入学习
(0人评价)
面向对象编程高级技术(C#语言基础)
价格 ¥ 198.00
该课程属于 全新Unity 微专业VIP全套系列课程 请加入后再学习

接口

using System;

namespace Practice
{
    public interface Food
    {
        //接口不能包含字段
        //可在接口中定义属性且属性也不能实现
        float Price { get; }
        //在接口中定义方法
        //1.不能添加访问修饰符,默认都是public
        //2.在接口中的方法不能实现
        void Eat();
    }

    public interface B
    {  
    }
    public class A
    {    
    }

    //Apple继承于A类且实现了Food接口和B接口(父类放在最前,接口放后且C#中只能继承一个父类,)
    //一旦某个类实现了接口,就必须实现接口中定义的全部成员
    public class Apple : A, Food,B
    {
        //实现接口中的Price属性
        public float Price
        {
            get { return 1.4f; }
        }
        //实现接口中的Eat方法
        public void Eat()
        {
            Console.WriteLine("HP+10");
        }
    }
    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);
        }
    }
}

 

[展开全文]
yuyufuhua · 2017-03-14 · 接 口 0

抽象类与抽象方法

using System;

namespace Practice
{
    //抽象方法只能出现在抽象类中
    //抽象类就是设计为被继承的类,抽象类只能被用作其他类的基类
    
    public abstract class Food
    {
        //抽象方法不能够实现
        //抽象方法不能使用Private访问修饰符
        public abstract void Eat();
        //抽象类中可以包含普通方法
        public void Test()
        {
            Console.WriteLine("Test");
        }
    }

    public class Apple : Food
    {
        //抽象方法必须被覆写,用override关键字
        public override void Eat()
        {
            Console.WriteLine("HP+10");
        }
    }

    class MainClass
    {
        public static void Main(string[] args)
        {
            //抽象类不能直接实例化,但可使用下面方法
            Food f1=new Apple();
            Food f2=new Apple();
            Apple apple=new Apple();
            apple.Eat();
            f1.Eat();//打印HP+10
            f2.Eat();//打印HP+10
        }
    }

}

 

[展开全文]

接口,支持多重继承

public interface aaaa{}

接口与类不同:接口不提供实现

 

[展开全文]
wang9426 · 2017-03-14 · 接 口 0

抽象类:

 不能被直接实例化;

 可以包含抽象成员

  不能被密封;

public abstract class myClass

{

     public abstract void method();

 

}

抽象方法没有方法体;

抽象方法必须声明在抽象类中;

抽象方法不能使用virtual,static,private修饰符

一个类只能继承一个基类,但可以继承多个接口

 

抽象类和接口的区别:

1.继承性(单继承和多继承)

2.成员权限(任意权限/必须是公共权限)

抽象类和普通类的区别:

1,抽象类不和具体的事物联系,普通类一般都是有具体意义的。

 

 

 

 

 

 

 

 

 

[展开全文]

授课教师

游戏制作人

课程特色

视频(3)
下载资料(3)
图文(1)
考试(1)

学员动态

王琪文 加入学习
EdgarChi 加入学习
一只小Q 加入学习