随笔分类 -  Modern C#系列课程 笔记

记一些容易忘的东西!
摘要:方法函数就是将一堆代码进行重用的一种机制。函数的语法:[public] static 返回值类型 方法名([参数列表]){ 方法体;}public:访问修饰符,公开的,公共的,哪都可以访问。static:静态的返回值类型:如果不需要写返回值,写void方法名:Pascal每个单词的首字母都大写,其余... 阅读全文
posted @ 2014-11-09 15:07 teacherzj 阅读(232) 评论(0) 推荐(0)
摘要:Array.Sort(nums);//升序排序Array.Reverse(nums);//反转//冒泡排序法for(int i=0;inums[j+1]) { int temp=nums[j]; nums[j]=nums[j+1]; nums[j+1]=temp; } }} 阅读全文
posted @ 2014-11-08 21:05 teacherzj 阅读(169) 评论(0) 推荐(0)
摘要://练习:将一个字符串数组的元素顺序时行反转string[] names={"我","是","好人"};for(int i=0;i<names.Length/2;i++){ string temp=names[i]; names[i]=names[names.Length-1-i]; names[n... 阅读全文
posted @ 2014-11-08 11:02 teacherzj 阅读(378) 评论(0) 推荐(0)
摘要://从一个整数数组中取出最大的整数,最小整数,总和,平均值 //声明一个int类型的数组,并且随意的赋初值 int[] nums={1,2,3,4,5,6,7,8,9,0}; //声明两个变量用来存储最大值和最小值 int max=int.MinValue;//nums[0]; int min=in... 阅读全文
posted @ 2014-11-07 13:17 teacherzj 阅读(1554) 评论(0) 推荐(0)
摘要:9、数组一次性存储多个相同类型的变量。语法:数组类型[] 数组名=new 数组类型[数组长度];数组的长度一旦被固定了,就不能被改变了。数组的申明方式:方式一:int[] nums=new int[10];方式二:int[] numsTow={1,2,3,4,5,6};//+++++++++++++... 阅读全文
posted @ 2014-11-07 11:42 teacherzj 阅读(163) 评论(0) 推荐(0)
摘要:8、结构可以帮助我们一次性声明多个不同类型的变量语法:[public] struct 结构名{ 成员;//字段}变量在程序运行期间只能存储一个值,而字段可以存储多个值。public struct Person{ public string _name;//字段,字段和变量的区别"_" public ... 阅读全文
posted @ 2014-11-06 20:19 teacherzj 阅读(170) 评论(0) 推荐(0)
摘要:枚举语法:[public] enum 枚举名{ 值1, 值2 值3, ......}枚举类型默认可以跟int类型相互转换,枚举类型跟int类型是兼容的。public enum QQState{ Online, OffLine, Leave, Busy, QMe}class Program{ stat... 阅读全文
posted @ 2014-10-26 14:57 teacherzj 阅读(205) 评论(0) 推荐(0)
摘要:*委托的定义 委托是一种引用方法的类型。一量为委托分配了方法,委托将与该方法具有完全相同的行为。委托方法的使用可以像其 他任何方法一样,具有参数和返回值。 *委托与C++函数指针区别 一个delegate object 一次可以搭载多个方法,而不是一次一个。当我们唤起一个搭载了多个方法的delegate,所有方 法以其“被搭载到delegate object 的顺序”被依次唤起 一个delegat... 阅读全文
posted @ 2009-03-08 21:45 teacherzj 阅读(219) 评论(0) 推荐(0)
摘要:*编码习惯 1、命名规范,接口用I开头做前缀,异常类使用Exception作为其后缀。 public class MyClass { int myNum=0; public MyMethod(int refObject){} } interface IMyInterface{...} public class MyEventException{...} 2、使用有意义的变量名称和名称空间。有返... 阅读全文
posted @ 2009-03-05 22:01 teacherzj 阅读(225) 评论(0) 推荐(0)
摘要:*4步用来强命名 创建强命名组件的步骤: 1、生成组public-private key pair 2、将其通过AssemblyInfo.cs的属性应用到组件中。 3、重新编译Assembly 4、重新编译客户端 *建立public/private key文件 使用.NET "SN" 命令行用法 -k 选项生成key pair 把该文件放置在vs solution/project目录下 sn.ex... 阅读全文
posted @ 2009-03-04 11:17 teacherzj 阅读(246) 评论(0) 推荐(0)
摘要:*多层设计 商业应用程序一般会有多层 表现层,商务逻辑层,数据访问层和数据存储 Presentation-->Business-->Data Access-->DataStore *不要弄混逻辑与物理 使用多层是逻辑设计 打包和放置是物理设计 *三种解决方案 全完OOP: 任何事物都是对象,在概会有1000多个对象存储在RAM 例如:Customers,Producte,Orders,Addres... 阅读全文
posted @ 2009-03-03 12:23 teacherzj 阅读(199) 评论(0) 推荐(0)
摘要:*建立简单数据库程序的一个过程 1、打开数据库连接。 2、执行查询语句并取回记录。 3、关闭数据库连接。 *异常处理 使用try-catch-finally来保证收尾工作 数据库关闭,资源被释放等等。 OleDbConnection dbConn=null; OleDbDataReader dbReader=null; try { dbConn=new OleDbConnection(sCo... 阅读全文
posted @ 2009-02-28 14:45 teacherzj 阅读(298) 评论(0) 推荐(0)
摘要:*事件驱动 简单的思路 用户个人的行为都被封装在很多事件中。 事件由操作系统来安排顺序执行。 *事件处理 事件被事件处理器处理 一般来说,这些处理器方法的代码是写在可视化界面的后面的。 .NET自动处理事件并生成一些基础的调用事件处理器的代码。 通俗讲,鼠标双击控件,写代码的过程。当然你也可以用类封装事件代码。 事件是通过Delegate(代理)映射给事件处理器的! 事件处理器参数 事件处理器有两... 阅读全文
posted @ 2009-02-27 09:30 teacherzj 阅读(212) 评论(0) 推荐(0)
摘要:*异常类型 每种异常类型都是一个类 两种大分类 System.SystemException System.ApplicactionException *.NET中异常处理方式 异常被对象所表现而不是错误代码。 异常的产生是通过throwing一个该异常的对象实现的。 异常的捕获是通过catch该异常的对象。 命名上可以读出是哪类异常:DivideByZeroException *捕获异常try... 阅读全文
posted @ 2009-02-26 16:34 teacherzj 阅读(376) 评论(0) 推荐(0)
摘要:构造函数Construcotr 类中特殊的方法,多用于初始化实例的数据成员,在实例化New时被自动调用。 函数名与类名总是相同,没有返回值。 通过重载,构造函数可以任意多。 构造函数间的调用。 public BankCustomer(string fn, string ln, double bal) { this.firstName = fn; this.lastName = l... 阅读全文
posted @ 2009-02-26 16:33 teacherzj 阅读(405) 评论(0) 推荐(0)
摘要:面向对象的三个特征 封装,继承,多态 数据隐藏 封装性最有用的方式之一 实现方法——访问限制修饰符 public 无限制,允许任何人来访问 protected internal = protected + internal Internal 允许项目或程序内部的类来访问 protected 继承时子类可以对基类有完全访问权 private 只允许同一个类中的成员访问 属性和索引器也用来封装类的... 阅读全文
posted @ 2009-02-26 16:31 teacherzj 阅读(208) 评论(0) 推荐(0)
摘要:类,是面向对象的核心,世界万物皆为类。套用金旭亮老师的话为类是印章,而对象为印章敲出的印。印在没有敲出以前,只是个模板。怎么敲出印的过程为对象的实例化。 实例化过程有点复杂。按我的理解是分二步。第一步在栈中加一个变量。第二步是在堆中建一个内存块,存放引用类型的数据,然后把栈中的变量值变为堆地址。 *类的初始化3个方法 1、Test mytest = new Test(); ... 阅读全文
posted @ 2009-02-26 16:30 teacherzj 阅读(180) 评论(0) 推荐(0)
摘要:微软为什么要用.NET Framework ,原因只有一点,就是为它的各个操作系统产品,找一个中间件,在移植和安全性方面得到统一。不过有一点是肯定的,速度慢了许多,这也是.net程序员最不爽的事。 在Common Language Runtime(运行时环境)中运行的程序都是授控的程序,C#程序员有一个方便的好处就是不用像C++程序员哪样要考虑很多内存垃圾清理的工作,这一切都由CL... 阅读全文
posted @ 2009-02-26 16:27 teacherzj 阅读(202) 评论(0) 推荐(0)