coust 定义常量
string是密封类,所以不能继承它
namespace默认是按照文件夹的结构命名的,如(System.文件夹.子文件夹),而且namespace是可以手动改的
 
ArrayLists可以放进去所有类型的变量,可以把它看作动态数组
add
remove,removeAt
clear
list.Contains();     判断元素是否存在
 
List<T>
HashSet<T>     只保留一份重复的数据
Dictionary<T,T>
 
Stopwatch类是秒表
Random     随机数
Path          路径处理
     Combine(第一部分,第二部分)     //合并路径,自动处理路径的斜杠
File
     File.WriteAllText(路径,内容)//写入文件,如果文件不存在则创建,如果文件夹不存在则抛出异常
Directory
StringBuilder
     Append(),AppendLine()
 
可空类型
在值类型名后加上个问号(?)可以声明可空类型的变量
int? i=null;
i.HasValue()     判断是否为null
 
FTP,HTTP处理
WebClient
FtpWebRequest
时间间隔
 TimeSpan
声音处理
SoundPlayer
委托中的匿名方法
delegate()
{
     //匿名方法
}
Lambda表达式
TestDelegate td = (s1,s2) => {
     Console.WriteLine(s1+s2);
}
扩展方法
扩展静态类的方法,使字面量可以直接调用类似String类的ToLower(),ToUpper()方法
如:str.IsEmail()
无参扩展方法:自己写个静态类,在方法的第1个参数前加上this关键字
有参的扩展方法,第一个参数就是要调用的对象,以后的参数依次是扩展方法的参数
Linq
类型推断
 var关键字声明变量,但和JS中不同,JS是弱类型的语言,可以为变量赋任何类型的值,
C#中一旦为变量赋了一种类型的值,就不能为其赋其余类型的值
匿名类型
var p = new { Name="Sky",Age=18 };
p是匿名类型的对象
LINQ的简便方法
from i in values
where i<0
orderby i descending 
select i;//select在最后
//select new Person{Age=10;}     可以创建对象
 
GC.Collect();     //手动垃圾回收
 
WeakReference 弱引用,监视一个变量是否被回收
 
string 和 StringBulder的区别
StringBuilder不会产生大量的临时字符串
 
"abc"=="123"     //判断值
object.RefernceEquals(s1,s2)     //判断对象的引用是否相同
 
字符串拘留池,会重用字符串对象,
但每次new出一个字符串,就肯定是创建了一个新的对象
 
C#中使用指针
在项目的属性中选中"允许不安全的代码",并且在方法前要加上"unsefe"关键字才可以使用指针
 
运算符重载
public bool operator ==(Person p1,Person p2)
 
结构体是值类型
 
浅度复制和深度复制
 
ICloneable接口提供一个Clone()方法可以进行深度复制,但实现代码需要自己完成
new一个对象把各个属性都挨个复制
 
可以使用对象的MemberwiseClone()方法来进行浅度复制,
它返回一个Object对象,需要自己转换成所需 的类型
 
数字与字符串相加,以数字开头,就返回与第一个数字相连的和再与余下的字符串相加
,以字符串头,就以数字的ToString()相加
 
字符串与一个非字符串对象相加,得到的是它的ToString*(
 
sealed 作为类的修饰符是密封类,作为方法的修饰符,不允许子类override
 
Stream
File,FileInfo,Directory,DirectoryInfo
FileStream,GZipStream
StreamReader,StreamWriter
 
泛型委托,系统定义的委托Func<T>
 
泛型约束
//构造函数约束
function<T>() where T:new() //约束T必须有无参的构造函数
//继承约束
function<T>() where T:Base
default(T)     返回这个类型的默认值,如果是值类型就返回null
 
程序集
反射Assembly类
 
Type类是对类的更高级的抽象,所有类都是它的实例
//没有对象的时候通过类来获得类的描述
Type t=typeof(Person)
//GetType()获得对象的类的类型描述
asbls[0]
Type t2=dog.GetType();
 
Activator.CreateInstance(type);     //创建type类的实例,要求必须有无参的构造函数
 
typeof(Class) 返回Class的Type描述
 
 
 
类的标记(Attribute)
[Serialize]     标记类为可序列化
[DisplayName("显示的类名")]
 
 
 

私人C#笔记的更多相关文章

  1. 练手项目:利用pygame库编写射击游戏

    本项目使用pygame模块编写了射击游戏,目的在于训练自己的Python基本功.了解中小型程序框架以及学习代码重构等.游戏具有一定的可玩性,感兴趣的可以试一下. 项目说明:出自<Python编程 ...

  2. 4.2 面向对象分析(二) CRC方法标识概念类

    CRC  又称为CRC索引卡片:CRC card  每张卡片代表一个类 Each card represents one class  每张卡片上写出这个类承担的职责.与其合作交互的其他类名   ...

  3. SQL SERVER 2012/ 2014 分页,用 OFFSET,FETCH NEXT改写ROW_NUMBER的用法(转)

    写法: 假装有个表Shop,其中有一列ShopName,取100000到100050条数据. ROW_NUMBER 的写法 SELECT * FROM (SELECT ShopName , ROW_N ...

  4. SQL SERVER 2012/ 2014 分页,用 OFFSET,FETCH NEXT改写ROW_NUMBER的用法

    写法: 假装有个表Shop,其中有一列ShopName,取100000到100050条数据. ROW_NUMBER 的写法 SELECT * FROM ( SELECT ShopName , ROW_ ...

  5. 【私人向】Java复习笔记

    此笔记学习于慕课网:Java入门第一季-第三季,想学的可以点击链接进行学习,笔记仅为私人收藏 建议学习时间:2-3天(极速版) 数据类型 基本数据类型存的是数据本身 引用类型变量(class.inte ...

  6. C# 私人笔记

    .ADO.NET 连接数据库的模版 string constr = "data source=127.0.0.1\\mysql2008;database=dbtest;integrated ...

  7. Docker 学习笔记(CentOS 7.1)

    基本概念 Docker 包括三个基本概念 镜像(Image) 容器(Container) 仓库(Repository)理解了这三个概念,就理解了 Docker 的整个生命周期. Docker 镜像 D ...

  8. python3.x随手笔记1

    语法分析 Python程序读取的 解析器 . 解析器的输入流 令牌 ,生成的 词法分析程序 . 这一章描述了如何 词法分析程序把一个文件分解成令牌. Python读取程序文本作为Unicode代码点; ...

  9. 《Power》读书笔记

    原创作品 版权所有 转载请注明出处! 序言 权力是“争”来的,不是“等”来的. 会计.工商管理.营销和销售部门.财务人员(背景).企业咨询小组 在位晋升而竞争的时候,对于公平竞争原则,有些人会采取变通 ...

随机推荐

  1. C复习手记(Day2)

    1.共用体 共用体是一种特殊的结构,允许在相同的位置存储不同的数据类型.可以定义一个带有多成员的共同体,但是任何时候只能有一个成员带有值. 定义共用体: union Data { int i; flo ...

  2. [C#]asp.net开发微信公众平台----目录汇总-持续更新

    1.[c#]asp.net微信公众平台开发(1)数据库设计 2.[c#]asp.net微信公众平台开发(2)多层架构框架搭建和入口实现 3.[c#]asp.net微信公众平台开发(3)微信消息封装及反 ...

  3. cocos2dx 帧动画(iOS)

    植物大战僵尸的植物摇摆效果 //帧动画 Animation *animation = Animation::create(); Sprite *sprite = Sprite::create(&quo ...

  4. Asp.Net--主题/皮肤文件

    主题 是皮肤的集合.皮肤描述了控件应该如何显示,它可以定义样式的属性,图片,颜色等. 如果拥有多个主题,用户可以根据需要选择主题来显示站点,这只需要通过点击按钮,从一个皮肤切换到另一个皮肤. 皮肤文件 ...

  5. asp.net 发送邮件代码 System.Net.Mail

    前台页面 SendEmail.aspx 代码 using System.Net.Mail;using System.Net; <h2> 发送电子邮件演示 </h2> <t ...

  6. 15--Box2D使用(一、创建物理世界)

    创建工程Box2DTest,去掉背景和精灵对象等.首先在HelloWorldScene.h头文件定义一个屏幕像素与物理世界长度转换宏,并引入box2D头文件 #define PIXEL_TO_METE ...

  7. 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字

    #include <iostream> using namespace std; int main() {long long s,n,i,j,p;s=0; cin>>n;    ...

  8. PHP 正则表达式处理字符串的应用(一)

    现有一个字符串如下: '旅行专题,旅行好玩 美好旅行;旅行真棒,一起旅行[旅行远足' 里面的分隔符号不确定,需要置换为如下: '旅行专题,旅行好玩,美好旅行,旅行真棒,一起旅行,旅行远足' 可以使用P ...

  9. Android 颜色大全 (colors.xml )

    <resources> <color name="pink">#ffc0cb</color><!--粉红色 --> <colo ...

  10. Nexus Root Toolkit教程—— 解锁与Root

    Nexus Root Toolkit是Nexus系列手机的专属root工具,本工具可为Nexus系列设备提供解锁.root和反解锁,还可以支持重要数据的备份和恢复.本教程以nexus 7二代和Nexu ...