首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C#的套路——中级 进阶版

自古光看记不住 唯有coding深人心

2

C#

TIPS 6

OOP封装与继承

面向对象编程:封装、继承、多态。

封装---(抽象)----->类(class)---->1.属性 2.方法

继承 父类的东西(除非私有)子类都可以继承

多态 多重形式

封装的好处:保证数据的安全性、提供清晰的对外接口、类内部实现可以任意修改,不会影响其它类。

封装算是老生常谈了,基本没学过也听过。上面的代码注意两个关键字的使用virtual和override。下面说说一个小知识点——可选参数。

可选参数:是指给方法的特定参数指定默认值,在调用方法时可以省略掉这些参数。

使用的时候要注意:

(1)可选参数不能为参数列表的第1个参数,必须位于所有的必选参数之后(除非没有必选参数);

(2)可选参数必须指定一个默认值,且默认值必须是一个常量表达式,不能为变量;

(3)所有可选参数以后的参数都必须是可选参数。

this的一种用法,区分全局/局部变量

TIPS 7

数据类型

#region和#endregion的用法

格式

#region 说明

代码

#endregion

收起来的样子

快捷键 :Ctrl + M + L 把当前页的代码合起来

Ctrl + M + M 只把最近的一段代码块合 起来

TIPS 8

接口 抽象类

接口 interface 接口是引用类型 不能被实例化

抽象类 abstract 可以包含功能定义和实现

接口的实现

接口的继承

TIPS 9

代码练习

List&ArrayList&Linq

先来看一道题:

定义People类 包含属性Name Age Sex

定义Student类 继承People 新加属性Math English

创建四个学生:

数学成绩超过90的学生个数

按照英语成绩排序

这里面有个知识点是=> 箭头函数

更深入的可以了解一下Lambda表达式 在筛选数据的时候真的很好用 ,在项目里你的几个foreach或者if else写8行9行才查询出来的数据,大神用个Lambda2行3行分分钟秒杀。

3.英语成绩最高值为多少

4.数学的平均成绩

这些问题自带函数就可以解决

按照英语成绩降序排列用OrderByDescending

按照性别分组 GroupBy

比较 CompareTo

ArrayList可以不用指定维数 可动态赋值 赋不同类型值

List变Dictionary ToDictionary

SingleOrDefault的例子:

列一下First,FirstOrDefault,Single,SingleOrDefault的区别

心情|阅读|鸡汤|电影

请留下你指尖的温度

让日光拥抱你

这是一个有温度的公众号

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180603G1EUL600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券