首先跟大家分享一句话: 偶尔找个时光,好好的放松一下吧,不要背负过多的压力。拒绝不属于我们自己的承担,让自己做一下自己想做的事,不要太长的时间,一个下午就好
Okay, give me the next time.
NO.1 接口初步
01.接口是用来规范实现该接口中类中方法的格式,它相当于是规范的制定者。
02.在没有继承关系的多个类中,想实现多态,接口是一种处理方案。
03.接口中只能定义方法不能定义变量。
0.1 :创建一个接口
命名规范所有接口名称必须有I开头,代表interface
public interface IFly { //注意接口中的方法不能有方法体,也不能有修饰符
//
void Say(); }
0.2 :使用接口实现多态
0.2.1 先定义一个接口
public interface IFly { //返回类型为string ,传入参数类型为string string Say(string msg); }
0.2.2 然后定义两个可以飞翔的类用来实现此接口
//01.定义一个鸟类 public class Birds:IFly,IEat { public string Say(string msg) { Console.WriteLine("我是一只小小鸟"); return "鸟!"; } } //02.定义一个飞机类 public class Plane:IFly { public string Say(string msg) { Console.WriteLine("我是一架冒着黑烟徐徐飞翔在孤寂的夜空中!!"); return "飞机"; } }
0.2.3最后在Main方法中实现接口
class Program { static void Main(string[] args) { //定义一个接口类型的数组 IFly[] flys = { new Birds(), new Plane() }; //遍历数组中的对象 foreach (IFly fly in flys) { //括号中的“飞行”并非可以显示出来,而是根据规范传入的字符串,可以是任意字符 Console.WriteLine(fly.Say("飞行")); } Console.ReadKey(); } }
运行结果如下:
讲到这里,你会了吗?反正我会了。
NO.2 匿名类
解析:顾名思义也就是没有名字的类!
话不多说马上来定义一个匿名类:
//什么是var? //成就匿名类的就是var:是一种语法糖技术 //var 意思就是代表任何数据类型,但是CLR在编译的时候会把它编译成确切的数据类型 var stu = new {Name="老王",Age=20,Phone="110"}; var stu2 = new {Name="随便",Age=25};
匿名类就定义好了,那么就有人问了怎么调用输出呢?来看代码
static void Main(string[] args) { var stu = new {Name="老王",Age=20,Phone="110"}; var stu2 = new {Name="随便",Age=25}; Console.WriteLine("我是"+stu.Name+ "我今年"+stu.Age+"岁"+"我的电话号不是"+stu.Phone);
Console.WriteLine("我是"+stu2.Name+"我今年"+stu2.Age); Console.ReadKey(); }
运行结果如下:
由于个人时间原因,今天讲的就到这里,如果大家感兴趣请关注一下,后续内容我会定时补上,谢谢大家百忙之中抽出的时间!