C#基础知识之三
C#基础知识之三
1、 程序集间的继承:基类必须被声明为public、必须在project中包含对该基类的程序集引用。
2、 对其它程序集引用和添加对using指令的差别:前者是告诉编译器所需的类型在哪里被定义,后者为了不必使用它们的全然限定名称。样例:对Mydll调用
3、 成员訪问修饰符protectedinternal是对全部继承该类或在该程序集内声明的类可訪问。即为protected和internal的并集而不是交集。
4、 抽象成员:用abstract标记。没有实现代码块,由分号取代。
5、 抽象类仅仅能被用作其它类的基类,不能创建抽象类的实例。
6、 密封类:仅仅能被用作独立的类,不能被用作基类,用sealed修饰符。
7、 静态类:用static标记,类全部成员必须是静态的,能够有一个静态构造函数,不能被继承。他们是密封的。
8、 扩展方法:扩展方法必须被声明为static,所在类也必须为static。扩展方法必须包括keywordthis作为它的第一个參数类型。并在后面跟着所扩展类的名称。例:
static class ExtendMyData//必须是一个静态类
{
public static double Average(this Mydata md)//必须是公有的和静态的,keywordthis,扩展类的名称Mydata
{//…….
}
}
9、 外部方法:用extern修饰符,在用分号代替实现;声明和实现的连接常用DLLImport特性完毕。例:获取当前文件夹的字符串,实现由win32系统调用。
10、 整数后缀含义:23-整型;23L-长整型;23U-无符号整型。23UL-无符号长整型
11、 实数后缀含义:236F-浮点型float;236.714-不带后缀是双精度型double。
12、 字符含义:由单引號内的字符表示组成。
13、 字符串含义:由双引號标记。分为规则字符串和逐字字符串,后面指双引號内的全部字符包含转义的都被严格按序列打印,唯一例外是相邻的双引號被解释为单个双引號,后者方法在字符串前加@前缀。
14、 二元运算符是左结合的。赋值运算符和条件运算符是右结合的。(左结合从左向右运算。)
15、 比較分深比較和浅比較,经常使用的==为浅比較。
16、 递增和递减运算:语句运行之后,终于存放操作数的值是同样的,唯一不同的是返回给表达式的值。在前为先赋值后计算,在后为先计算后赋值。
17、 条件逻辑运算符:与&&(两true为true); 或||(一true为true);非!(结果相反)。
18、 在条件运算与(&&)操作中使用“短路”模式。仅仅要第一个操作数为false。第二个操作数将不会被计算。
所以在第二个操作中不要带有操作行为。
此文件由朱朱编写,转载请注明出自朱朱家园http://blog.csdn.net/zhgl7688
C#基础知识之三的更多相关文章
- 汇编寄存器(内存访问)基础知识之三---mov指令
1 内存中字的存储 一个字型数据占2个内存单元,内存里面一个内存单元一个字节(8位),高地址单位放高8位,低地址单元放低8位. 注意:0号是地址单元,1是高地址单元(上是低地址,下面是高地址) (1 ...
- 【Unity基础知识之三】Unity Assets目录下的特殊文件夹名称
Unity3D的特殊目录名称 Unity预留了一些目录名称,这些目录有着特殊的含义.比较重要的有: Resources这个目录下的所有文件都会被打包到发布版本中,程序可以通过文件路径来访问它们.这 ...
- kubebuilder实战之三:基础知识速览
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- .NET面试题系列[1] - .NET框架基础知识(1)
很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...
- RabbitMQ基础知识
RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- selenium自动化基础知识
什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- [Tools] Create a Simple CLI Tool in Node.js with CAC
Command-line tools can help you with all sorts of tasks. This lesson covers the very basics of setti ...
- Swif语法基础 要点归纳(一)
常量和变量 用let声明常量 let m = 20 用var声明变量 var n = 0 类型推导机制 声明常量或变量时.能够不指定常量/变量类型,编译器会依据 ...
- Go语言格式化字符
https://github.com/polaris1119/The-Golang-Standard-Library-by-Example/blob/master/chapter01/01.3.md
- C++ 智能指针详解(转)
C++ 智能指针详解 一.简介 由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete.程序员忘记 delete,流程太复杂,最终导致没有 delete,异常 ...
- ckeditor编辑时 回车 生成一个段落p、解决首行缩进问题
使用ckeditor编辑器时,会自己主动加入上的标签,按回车也会自己主动加入上同样的标签 查看ckeditor编辑器源代码时会看到,点击回车显示的<p> </p> static ...
- linux vi设置行号
首先,vi的配置文件是/etc/vim/vimrc,不同系统可能有出入,不过我建议大家在home中建立一个.vimrc文件,照样可以达到同样的效果.其实/etc中的配置是全局的,home中的配置只针对 ...
- oc 跳转控制方法
1.presentViewController - (void)presentViewController:(UIViewController *)viewControllerToPresent an ...
- Android实用工具
1 json类:hiJson 格式化json字符串 2 sqlite类:sqlitespy,SQLiteExpertSetup 3
- Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法)
Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法) https://blog.csdn.net/ksws0292756/article/details ...
- Webpack与Gulp、Grunt区别
Webpack与Gulp.Grunt没有什么可比性,它可以看作模块打包机,通过分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等 ...