---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
初次接触C#,感觉苏坤老师的讲解真是深入浅出,让我这个之前对C#一无所知的门外汉也能初窥其中奥妙,并对C#产生了极其浓厚的兴趣。下面针对学习中用到的C#语法给大家做下总结,希望可以帮助到学习的朋友,很期待早日进入黑马和大家进行交流。
1、变量的定义:int
uu字母、数字、下划线(_)
uu不以数字开头
uu取名时要有一定的意义
uuC#中是区分大小写的
uuC#中同一作用域中的变量名要唯一
2、数据类型:
数值类型:
字符:char
字符串:string
枚举类型:enum
布尔类型:bool
结构体:struct
if (条件语句)
{
语句1
}
else
{
语句2
}
else语句可以省略
二分支语句可以嵌套
(2)多分支语句
switch(表达式)
{
case 值:语句1;
case 值:语句1;
…n
default:
}
2、循环语句
(1)for(循环变量 = 初值;循环变量和终值的比较表达式;改变循环变量的值)
{
//
}
(2)while(条件表达式)
{
语句;
改变循环变量的值
}
(3)do
{
语句;
改变循环变量的值
}
while(条件表达式)
(4)foreach(元素 in 集合)
{
语句;
}
using…//引用命名空间
namespace命名空间名
{
[类的修饰符] class 类名
{
类的成员
}
}
1、什么是类?
(1)类是一种自定义的数据类型,即对象的类别
(2)类是用于共同对象的集合的名称
2、类的语法:
[类的修饰符] class 类名
{
类的成员的定义;
}
3、类的成员包括:
(1)字段:类中的变量,用来存放数据,一般用于存放类的属性值。形式和定义变量的形式一致。
(2)方法:类中的函数,类所能完成的操作,形式和定义函数的形式一致
(3)属性:属性是特征的体现,而特征值存放在字段中,属性是对字段的读写控制
属性的定义:
访问修饰符属性的类型属性的名称
{
get { return 字段值;}
set { 字段 = value;}
}
属性的类型一般以实际需要为准,如果只是简单的对字段的读和写,建议和字段一致。
属性名取名不能和字段或者方法相同,而且取名规则与变量类似
在实际开发中,一般我们把字段采用小写,而属性遵循帕斯卡的命名规范
Get方法在属性中用于属性的读,Set方法用于属性的写
如果在属性定义中只有Get而没有Set,则属性是只读的
如果在属性定义中只有Set而没有Get,则属性是只写的
属性只有定义,而不存储数据,数据则存放在字段。
属性可以对字段的读写特性进行控制,也可以判断用户的操作的有效性,
在实际开发中,通常把属性定义成公开的,而字段定义成私有的。
对于字段的读写都是通过属性来完成的。
(4)事件(委托,也称为代理):触发对象执行某个动作的事情
4、访问修饰符:用于说明该对象可以被谁访问
(1)只有自己能访问:private
(2)可以被直属成员反问:protected
(3)完全公开的:public
(4)外部可以被访问:internal
5、静态修饰符static
(1)如果在类的定义前加上static关键字。则该类为静态类
(2)如果在类成员的定义前加上static关键字。则为该类的静态成员
(3)静态类和静态成员可以在当前程序中被任何类和对象访问。其访问方式为:类名.成员名
(4)静态类及静态成员会自程序开始运行就被系统创建而保存在
内存中,直到程序退出才被销毁
6、分部修饰符:paritial
该关键字用于标识该类被分开编写到多个文件中。它使得多个文件可以共用一个类。
7、虚拟和抽象(virtual和abstract)
(1)在类的方法前添加virtual作为修饰符,则使得该方法问虚方法。虚方法可以在其子类中被重写,使得该方法具有不同的操作。
(2)在类或者其方法前添加virtual作为修饰符,则该类为抽象类(方法为抽象方法)。抽象类和抽象方法一般是一个名称而已。其必须被子类重写实现才能被使用。
(3)重写一个虚方法或者抽象方法的关键字为:override
8、密封修饰符:sealed
在类或者其成员前加sealed修饰符,可以使得该类被密封(成员为密封成员),被密封的类不允许被继承。成员不允许被重新实现。
9、构造函数
(1)构造函数是用来在对象刚创建时对对象中的成员等进行初始化操作的函数
构造函数的语法:
访问修饰符类名()
{
//
}
构造函数名称与类名相同
构造函数不规定返回值,并且一定没有返回值
在对字段进行初始化是,如果字段与局部变量冲突,则可以使用this来代替当前实力,即访问语法如下:this.成员名
类中成员的访问:
类名.成员名:成员是静态成员
this.成员名:访问当前对象自己的成员
实例名.成员名:访问某个对象的成员
(2)私有构造函数
私有构造函数由于构造函数是私有的,无法本其他对象实例化,所以无法进行实例化
私有构造函数的作用就是防止对象被实例化。
无法实例化的类可以访问的只有静态成员
类的变量只允许类中都可以访问
只有静态成员才可能被整个应用程序访问,所以静态成员可以
作为整个应用程序级的全局变量,实现数据共享
(3)静态构造函数
初始化静态变量
静态构造函数就是普通构造函数之前加“static”
静态构造函数由系统自动调用,我们不需要去调用它。
静态对象是系统一启动就创建的对象
类的定义前加“static”可以定义静态类,今天类中不能由非静态成员,不能有访问修饰符
(4)析构函数:用于对象不再使用时进行释放是对象及其所占的资源
语法: ~类名()
{
//
}
对象的生命周期:构造函数(创建对象)——>使用对象——>析构函数(销毁对象)
10、类的继承和派生和多态
继承的语法:class类名:父类名{…}
派生是对继承后的子类进行扩展其功能。
多态是指一个方法可以在不同场合实现不同的操作。这种情况在类被继承时,其虚方法或者抽象方法经常体现为这样的结果。
第三部分:Windows窗体应用开发
第四部分:数据库访问技术(ADO.NET)
一、创建数据库连接对象(Connetion)
.Net中有四种主要的数据库连接对象:
SqlConnetion:专门用于连接SQLServer,其所在的命名空间为“System.Data.SqlClient”
OracleConnetion:专门用于连接Oracle
OdbcConnetion:专门用于连接ODBC
OleDbConnetion:专门用于连接OLEDB
访问SQL Server,需要为其指定连接的服务器的信息,这些信息都被写成连接字符串
至少包含:服务器、身份验证方式,还可包含数据库:
服务器:Server,
本机,可以是“.”、“127.0.0.1”、本机IP、本机的计算机名、“localhost”,
非本机(远程),可以是:远程IP、远程计算机名
Windows身份验证:IntegratedSecurity=true
数据库:DataBase
例如:
SqlConnection conn = new SqlConnection();
//conn.ConnectionString = "Server=.;DataBase=STMSDB;Integrated Security=true;"; //设置其连接字符串,为其指定服务器的连接信息,信任连接
conn.ConnectionString = "Server=.;DataBase=STMSDB;UID=sa;Pwd=123;"; //设置其连接字符串,为其指定服务器的连接信息,非信任连接
二、创建执行SQL语句的对象(Command)
.Net提供了四种不同的命令对象
执行SQL Server的SQL语句:SqlCommand
执行Oracle的SQL语句:OracleCommand
执行OleDb的SQL语句:OleDbCommand
执行Odbc的SQL语句:OdbcCommand
要使用命令对象:
设置所使用的连接:Connection
设置所要执行的SQL语句的类型:CommandType
设置要执行的SQL:CommandText
例如:
SqlCommandcmd = newSqlCommand();
cmd.Connection = conn; //指定该对象使用刚刚创建的连接conn
cmd.CommandType =CommandType.Text;
cmd.CommandText = "Select *From T_Operators Where OperatorId = '" + this.edtUser.Text.Trim() +"' And Passwords = '" + this.edtPwd.Text.Trim() + "';"; //设置SQL语句
三、创建处理执行SQL语句后的结果的对象(数据适配器:DataAdapter)
处理SQL Server的执行结果:SqlDataAdapter
处理Oracle的执行结果:OracleDataAdapter
处理OleDb的执行结果:OleDbDataAdapter
处理ODBC的执行结果:OdbcDataAdaper
使用适配器对象获取数据集
设置其查询命令的对象:SelectCommand
四、创建用于存储SQL执行后的结果的对象:
数据表:DataTable【只有一张表】
数据集:DataSet【由N张表组成,保存为其属性:Tables】
表:行、列、约束
这是比较系统的一片总结我们C#语法的文章,真的很不错,在这里给大家做下分享,希望我们都能够牢牢地掌握C#的基础语法来去应用到以后的项目中去,突然想到苏老师讲的我们程序员不是干的脑力活不是讲究的谁聪明,只要你不懒,什么程序都能够编辑出来,让我们共同努力,学会所有的该学会的东西。一起加油!
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------