随笔分类 - C#
摘要:先来看看下面一个类中的一些方法: class Bc { public double Add(double number1, double number2) { return number1 + number2; } public double Multiply(double number1, dou
阅读全文
摘要:类只能继承一个类,不能继承多个类,但可以继承多个接口Interface。 类是对象的抽象,抽象类是类的抽象,而接口是行为的抽象。 下面Insus.NET创建2个接口: 接口是统一行为,抽象是从现在有代码中,把上同代码抽取出来的一个抽象方法,而接口却是相反。不清楚有什么子类存在,行为具体实现也不确定。
阅读全文
摘要:抽象类,有3个特点: 第1个,不能被实例化。 第2个,类中的抽象方法在继承的子类中必须重写。 第3个,类一旦有抽象方法出现,那这个类必须定义为抽象类。 现实开发中,发现有共同的代码,可以把这些共同的代码放在一个抽象类中。举个例子,计算四边形的周长。 矩形,长方形,正方形: class Rectang
阅读全文
摘要:前一篇有学习过《把List<T>转换为DataTable》http://www.cnblogs.com/insus/p/8043173.html 那此篇,将是学习反向,把DataTable转换为List<T>。这个方法使用的较多。很多情况之后,从数据读出来的数据是DataSet或是DataTable
阅读全文
摘要:下面这个学习,把List<T>转换为Datatable。 下面先创建一个对象T: class Ay { private int _ID; public int ID { get { return _ID; } set { _ID = value; } } private string _Accoun
阅读全文
摘要:使用一个小例子来演示:创建一个普通类别: class Ax { private int _ID; public int ID { get { return _ID; } set { _ID = value; } } private string _Name; public string Name {
阅读全文
摘要:策略模式,即规则在变化之中,结果终归为一。公司给员工计算工资,如有加班费,差旅费,每个月的生活补帖等等其它费用需要计算。这个费的规则是不尽相同。 不管策略的规则怎样,终归需要计算出一个结果 工资:可以定义一个接口: interface IStrategy { double Cost(double b
阅读全文
摘要:这篇是对象与集合操练,物件的创建,集合的一些基本功能,如添加,编辑,删除等功能。 对象,即是网店的商品物件,Insus.NET只为其添加2个属性,物件的ID的Key和名称ItemName以及2个构造函数,最后一个方法是重写ToString()方法。 class Item { private int
阅读全文
摘要:你可以创建一个hashtable: 你可以使用foreach方法,把hashtable的key与value循环写出来: 在控制台屏幕输出: 如果只需把key输出: 如果只想把值循环输出: 测试输出结果: 往hashtable集合添加key与value: 有添加就是移除: 测试上面的添加Add和移除:
阅读全文
摘要:昨天有写过一个单例模式的练习。《单例模式(C#)》 写得较为复杂,今天再使用另外的方法来实现: class Au { private static readonly Au instance = new Au(); public static Au Instance { get { return in
阅读全文
摘要:在C#中,我们对集合的数据,可以创建一个索引器的方法来访问集合。如: class AS { public string[] Autos = { "德系","欧系","美系","日系","韩系"}; public string this[int index] { get { return Autos[
阅读全文
摘要:学习设计模式,一直没有机会写一个单例模式。今天在控制台应用程序,写个简单的例子,Hi与Hello。 public sealed class At { private static At instance = null; public static At Instance { get { if (in
阅读全文
摘要:delegate中文的意思为委托。在很久之前,Insus.NET有写过一篇《用一个简单的例子来演绎事件委托》http://www.cnblogs.com/insus/p/3732075.html 和另外一篇《涉及事件开发应用委托》http://www.cnblogs.com/insus/p/4148
阅读全文
摘要:C#的out关键词,即是方法内赋值。返回处理后的结果。打个比喻,有一个宽度的需要按比例缩放。标准宽度为88,如宽度大于这个标准宽度的话,按照0.8进行缩放。如果小于标准宽度,输出的结果没变化。此时,你可以写一个方法: public static void ReSizeWidth(double ori
阅读全文
摘要:今天练习C#的一个功能,就是将一个字符串时行翻转显示 如: 翻转成为: 方法与写法很多。 方法一: public void Reversal(string input) { string result = ""; for (int i = input.Length - 1; i >= 0; i--)
阅读全文
摘要:实现标题的功能,方法也很多。Insus.NET也为此练习一番。如有字符串: 方法一: public void SplitString(string str) { int len = str.Length; for (int i = 0; i < len; i++) { Console.WriteLi
阅读全文
摘要:在C#程序里,宣告一个变量,是件很容易的事情。如下面,宣告一个变量,并赋值: int type = 22; Console.WriteLine(type); bool type1 = false; Console.WriteLine(type1); string type2 = "Insus.NET
阅读全文
摘要:程序中,有输出,也有输出。 在输出时,我们通常会格式化一下输出的格式:如前一篇《字符串阵列分别输出元素的索引,原值和长度》http://www.cnblogs.com/insus/p/8010573.html 输出的参数有多有少。此时,我们可以写一个扩展方法,来处理一下这个参数传入的问题: 在格式化
阅读全文
摘要:下面有一个字符串阵列: 当你接到这个问题时,你是怎样解决写实现呢?直接写代码?还是运行面向对象的思维来开发呢?既然有此一问,下面Insus.NET分享自己的实现方法:创建一个对象,即代字符串阵列中每一个元素的对象: class Item { private int _Index; public in
阅读全文
摘要:按标题的要求将一个字符转换为整数。实现此功能,也有好几个方法方法一:Convert.ToInt32(string); 运行代码: 方法二: int.Parse(object): 运行结果: 这个字符正好是数字的字符串,使用int.Parse()是没有任何问题,但是如果这个是非数字的字符串呢? 运行时
阅读全文