1..NET两大组件:公共语言进行时(CLR)和框架类库;
2.面向对象三大特征:
封装:保证对象自身数据的完整性和安全性;
继承:建立类之间的关系,实现代码复用,方便系统的拓展;
多态:相同的方法调用可实现不同时实现方式;
3.引用类型(可以new出来的)当参数时值会发生改变,值类型当参数时值不会发生改变,传进去的是副本;
4.将值类型转换为引用类型的过程叫做装箱,反之,叫做拆箱。结构是值类型;
5.foreach的使用:foreach(数据类型,变量名,in ,数据名)
6.泛型集合List<类> 对象名 = new List<类> () ;
添加元素:对象名.add(元素名);
遍历集合:PE p = new PE();
List<PE> list = new List<PE>();
list.Add(p);
foreach (PE pe in list)
{
Console.WriteLine(pe.Name);
}
7.泛型集合Dictionary<键,值>
遍历集合:
Dictionary<键,值> list = new Dictionary<键,值>();
foreach (PE pe in list)
{
取值: Console.WriteLine(pe.键);
取键: Console.WriteLine(pe.值);
}
8.构造:方法名与类名必须相同、没有返回值;主要用于对象的初始化工作
9.重载:方法名称要相同、参数个数不同,参数类型不同、须在同一个类中
10.继承:被继承的类叫做父类或基类,继承的其他的类叫子类或派生类;
在子类中可以用base直接调用父类的属性;
父类中用private修饰的成员子类无法访问;
父类中用protected修饰的成员只有子类可以访问;
用sealed修饰的类无法被继承;
继承有传递性和单根性,一个子类不能同时继承多个父类,class A:B,class B:C 则A可以访问C的成员;
//Is关键字用来判断类型;
**//as
11.多态:用virtual关键字来修饰虚方法,用override关键字来对父类的方法重写;
子类重写父类的虚方法:创建父类变量,用子类对象实例化父类变量;
把父类类型作为参数类型,他的子类对象作为参数传入;
12.抽象方法:没有方法体;修饰符 abstract 返回类型 方法名(); 含有抽象方法的类必须是一个抽象类:修饰符 abstract class 类名;
13.工厂模式:实例化对象,用工厂方法代替new操作;
提倡“高内聚 低耦合”的设计理念,即模块内部的元素彼此之间联系越紧密越好,而模块与模块之间尽量减少依赖,减少不必要的维护;
14.单例设计模式:实现播放器播放音频文件;
15.XML:可拓展标记行语言,用于描述数据,是当前处理结构化文档信息的有力工具;
Xml的根节点只能有一个;
解析XML:
XmlDocument xml = new XmlDocument();
xml.Load(“xml文档名.xml”);
XmlNode no = xml.DocumentElement;//获取根节点
foreach(XmlNode node in no.ChildNodes)//对子节点进行循环
{
Switch(node.Name)
{
Case:”节点名”:
Cw(node.InnerText);
}
}
16.序列化:
语法:using system.runtime.serialization.formatters.binary(包名)
[serializable]
Public class Savinginfo()
{
Public void Save()
{
FileStream fs = new FileStream(@”文件路径”,FileMode.Create);
BinaryFormatter bf = new BinaryFormatter();
bf.Serizloize(fs,this.seria);
fs.Close();
}
]
17.反序列化:
Public void Load()
{
FileStream fs = new FiileStream(@“文件路径”,FileMode.Open);
BinaryFormatter bf = new BinaryFormatter();
This.seria = (SavingInfo)bf.Deserialize(fs);
Fs.close();
}