本文已参与 「掘力星计划」 ,赢取创作大礼包,挑战创作激励金。
👉关于作者
众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣!!!
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
欢迎关注公众号【空名先生】获取更多资源和交流!
👉实践过程
😜属性
总结一句话,和Java里实体的get/set方法一样的性质。
😜委托
使用关键字delegate来修饰的,必须用new关键字来创建,且与某个特定方法有所关联的。
比较官方的说法就是:表示对具有特定参数列表和返回类型的方法的引用。通过委托,可以将方法视为可分配给变量并可作为参数传递的实体。 委托还类似于其他一些语言中存在的“函数指针”概念。 与函数指针不同,委托是面向对象且类型安全的。
按照自己的理解:委托就是包一个外壳,操作外壳就是调用壳内的内容。就好像老板让你板砖,你委托给另一个人让她板砖。这就是委托。
委托中还能通过加减号来实现多个,称之为多播。只有相同类型的委托可以合并。
使用场景:因刚需C#没什么实际经验,大家知道有什么好的实际应用环境吗,欢迎在下方留言探讨啊
委托示例:
//这个是声明个委托
delegate int NumberChanger(int n);
static int num = 10;
public static int AddNum(int p)
{
num += p;
return num;
}
public static int MultNum(int q)
{
num *= q;
return num;
}
static void Main(string[] args)
{
// 创建委托实例
NumberChanger nc;
NumberChanger nc1 = new NumberChanger(AddNum);
NumberChanger nc2 = new NumberChanger(MultNum);
// 使用委托对象调用方法
nc1(25);
Console.WriteLine("Value of Num: {0}", num);
nc2(5);
Console.WriteLine("Value of Num: {0}", num);
//下面是组播 使用 +或- 符号操作
nc = nc1;
nc += nc2;
// 调用多播
nc(5);
Console.WriteLine("Value of Num: {0}", num);
Console.ReadKey();
//输出结果为:
//Value of Num: 35
//Value of Num: 175
//Value of Num: 75
}
😜枚举
就是命名一组整型常量,不能继承或传递继承,只能被当做常量使用。举例:enum Number{one,two,three}; 则Number.one等于0 Number.two等于1,其他以此类推
枚举可以和结构体结合:
public struct Person{
public string _name;//字段
public int _age;
public Gender _gender;
}
public enum Gender {
男,
女
}
Person zsPerson;
zsPerson._name = "张三";
zsPerson._age = 21;
zsPerson._gender = Gender.男;
😜异常
哎呀,这个老四件套了:try、catch、finally 和 throw
- try: 一个 try 块标识了一个将被激活的特定的异常的代码块。后跟一个或多个 catch 块。
- catch: 程序通过异常处理程序捕获异常。catch 关键字表示异常的捕获。
- finally: finally 块用于执行给定的语句,不管异常是否被抛出都会执行。例如,如果您打开一个文件,不管是否出现异常文件都要被关闭。
- throw: 当问题出现时,程序抛出一个异常。使用 throw 关键字来完成。
👉其他
📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:芝麻粒儿 的个人主页 - 专栏 - 掘金 (juejin.cn)
📢欢迎点赞👍收藏🌟留言📝
【欢迎在评论区讨论,掘金官方将在掘力星计划活动结束后,在评论区抽送100份掘金周边,抽奖详情见活动文章】