版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章搭建ASP.NET开发及运行环境.pptx第2章ASP.NET网页开发基础.pptx第3章C#语法基础.pptx第4章ASP.NET标准控件.pptx第5章ASP.NET验证控件.pptx第6章HTTP请求、响应及状态管理.pptx第7章ADO.NET数据访问技术.pptx第8章使用LINQ进行数据访问.pptx第9章数据绑定.pptx第10章用户和角色管理.pptx第11章主题、母版、用户控件和Web部件.pptx第12章网站导航.pptx第13章MicrosoftAJAX.pptx第14章Web服务和WCF服务.pptx第15章ASP.NETMVC编程.pptx第16章综合实例——图书馆管理系统.pptx第17章课程设计——电子购物商城.pptx搭建ASP.NET开发及运行环境01ASP.NET基础02IIS的安装与配置03VisualStudio2015开发环境04第一个ASP.NET网站1
ASP.NET基础什么是ASP.NET
引入
ASP.NET是一种开发动态网站的技术。.NETFramework概述
公共语言规范
通用类型系统.NETFramework(运行平台)VisualStudio(开发工具)VB.NETC#VC++JScript….NETFramework
类库(CLR)开发语言ASP.NET程序ASP.NET与.NETFrameworkASP.NET的特性2015年ASP.NET5.0ASP.NET4.5ASP.NET4.0ASP.NET3.02005年11月ASP.NET2.02003年ASP.NET1.12000年ASP.NET1.0ASP.NET的版本2IIS的安装与配置主要内容安装IIS配置IIS123VisualStudio2015开发环境主要内容安装VisualStudio2015的必备条件安装VisualStudio2015启动VisualStudio2015123VisualStudio2015的集成开发环境安装VisualStudio2015的必备条件名称说明处理器1.6GHz处理器,建议使用2.0GHz双核处理器RAM2G,建议使用4G内存可用硬盘空间所有驱动器上需要9G(典型安装)或者20G(全部安装)的可用空间DVD-ROM使用(或者使用虚拟光驱)显示器1024*768,增强色16位操作系统及所需补丁Windows7(SP1)、Windows8、Windows8.1、WindowsServer2008R2SP1(x64)、WindowsServer2012(x64)、Windows10安装VisualStudio2015
下载VisualStudio2015(社区版)的安装镜像文件http:///downloads/4
第一个ASP.NET网站ASP.NET网站基本构建流程示例:输出“HelloWorld”创建ASP.NET网站示例:输出“HelloWorld”熟悉VisualStudio2015开发环境
菜单栏
工具栏
“工具箱”窗口
“属性”窗口
“错误列表”窗口0102030405设计Web页面布局页面12添加服务器控件添加ASP.NET文件夹示例:输出“HelloWorld”运行应用程序配置IIS虚拟站点浏览ASP.NET网页小结通过本章的学习,读者可以首先了解ASP.NET的发展历程、特性,然后需要重点掌握如何搭建IIS服务器的安装及配置、VisualStudio2015开发环境的安装等内容。另外,本章在讲解过程中,为了能够使读者对ASP.NET网站有一个大体的认识,按照创建、设计、运行、配置虚拟站点、浏览网页的流程详细讲解了一个ASP.NET网站的完整实现步骤。上机指导使用VisualStuido2015开发环境创建一个电子购物商城网站,名称为NetShop,该网站中有一个Web窗体,其中输出“欢迎光临电子购物商城!”。ASP.NET网页开发基础01ASP.NET网页语法02HTML标记语言03CSS样式表04JavaScript脚本基础05jQuery技术1ASP.NET网页语法主要内容ASP.NET网页扩展名
页面指令
ASPX文件内容注释服务器端文件包含01020304.htm.aspx.ascx
.xml.asmx.skin.css.master.configASP.NET网页扩展名.asax.sitemap页面指令
<%@Page%><%@ImportNamespace="Value"%><%@OutputCache%><%@ImplementsInterface="接口名称"%><%@Register%>
服务器端注释<%--<asp:TextBoxID="TextBox2"runat="server"></asp:TextBox>--%>ASPX文件内容注释脚本注释<scriptlanguage="javascript"runat="server">//注释内容</script>服务器端文件包含<!--#includefile|virtual="filename"-->语法<html><body>
<!--#Includevirtual="/include/header.ascx"--></body></html>.ascxGlobal.asax.aspx2
HTML标记语言主要内容创建第一个HTML文件
HTML文档结构
HTML常用标记表格标记HTML表单标记超链接与图片标记010203040506什么是HTMLHTML是一种超文本语言,在因特网上常见的网页制作标注性语言,HTML是通过浏览器的翻译,将网页中内容呈现给用户。HTML文档结构<html>标记<head>标记<title>标记<body>标记<html><head><title>HTML页面</title></head><body>
应用记事本编写HTML代码</body></html>代码HTML常用标记<br>换行标记<p>段落标记<h1>标题标记<center>居中标记<li>文字列表标记<html><head><title>设置标题标记</title></head><body><center><h1>java开发的3个方向</h1><h2>JavaSE</h2><p>主要用于桌面程序的开发。它是学习JavaEE和JavaME的基础,也是本书的重点内容。</p><h2>JavaEE</h2><center><p>主要用于网页程序的开发。随着互联网的发展,越来越多的企业使用Java语言来开发自己的官方网站,其中不乏世界500强企业。</p></center><h2>JavaME</h2><center><p>主要用于嵌入式系统程序的开发。</p></center></body></html>代码表格标记表格标记<table>标题标记<caption>表头标记<th>表格行标记<tr>单元格标记<td><body><tablewidth="318"height="167"border="1"align="center"><caption>学生考试成绩单</caption><tr><tdalign="center"valign="middle">姓名</td><tdalign="center"valign="middle">语文</td><tdalign="center"valign="middle">数学</td><tdalign="center"valign="middle">英语</td></tr><tr><tdalign="center"valign="middle">张三</td><tdalign="center"valign="middle">89</td><tdalign="center"valign="middle">92</td><tdalign="center"valign="middle">87</td></tr></table></body>代码HTML表单标记<form>…</form>表单标记属性描述action用来指定处理表单数据程序的URL地址method用来指定数据传送到服务器的方式。该属性有两种属性值,分别为get与post。get属性值表示将输入的数据追加在action指定的地址后面,并传送到服务器。当属性值为post时,会将输入的数据按照HTTP协议中post传输方式传送到服务器。name指定表单的名称,该属性值程序员可以自定义。onSubmitonSubmit属性用于指定当用户单击提交按钮时触发的事件。targettarget属性指定输入数据结果显示在哪个窗口中,该属性的属性值可以设置为“_blank”、“_self”、“_parent”、“_top”。其中“_blank”表示在新窗口中打开目标文件,“_self”表示在同一个窗口中打开,这项一般不用设置,“_parent”表示在上一级窗口中打开。一般使用框架页时经常使用,“_top”表示在浏览器的整个窗口中打开,忽略任何框架。属性描述type用于指定添加的是哪种类型的输入字段disabled用于指定输入字段不可用,即字段变成灰色。其属性值可以为空值,也可以指定为disabledchecked用于指定输入字段是否处于被选中状态,用于type属性值为radio和checkbox的情况下。其属性值可以为空值,也可以指定为checkedwidth用于指定输入字段的宽度,用于type属性值为image的情况下height用于指定输入字段的高度,用于type属性值为image的情况下maxlength用于指定输入字段可输入文字的个数,用于type属性值为text和password的情况下,默认没有字数限制readonly用于指定输入字段是否为只读。其属性值可以为空值,也可以指定为readonlysize用于指定输入字段的宽度,当type属性为text和password时,以文字个数为单位,当type属性为其他值时,以像素为单位src用于指定图片的来源,只有当type属性为image时有效usemap为图片设置热点地图,只有当type属性为image时有效。属性值为URI,URI格式为“#+<map>标记的name属性值”。例如,<map>标记的name属性值为Map,该URI为#Mapalt用于指定当图片无法显示时,显示的文字,只有当type属性为image时有效name用于指定输入字段的名称value用于指定输入字段默认数据值,当type属性为checkbox和radio时,不可省略此属性,为其他值时,可以省略。当type属性为button、reset和submit时,指定的是按钮上的显示文字;当type属性为checkbox和radio时,指定的是数据项选定时的值HTML表单标记<input>表单输入标记属性描述name用于指定列表框的名称size用于指定列表框中显示的选项数量,超出该数量的选项可以通过拖动滚动条查看disabled用于指定当前列表框不可使用(变成灰色)multiple用于让多行列表框支持多选HTML表单标记<select>…</select>下拉菜单标记HTML表单标记<textarea>多行文本标记属性描述name用于指定多行文本框的名称,当表单提交后,在服务器端获取表单数据时应用cols用于指定多行文本框显示的列数(宽度)rows用于指定多行文本框显示的行数(高度)disabled用于指定当前多行文本框不可使用(变成灰色)readonly用于指定当前多行文本框为只读wrap用于设置多行文本中的文字是否自动换行,可选值如表2.5所示超链接与图片标记超链接标记<a>图像标记<img><tablewidth="409"height="523"border="1"align="center"><tr><tdwidth="199"height="208"><imgsrc="images/ASP.NET.jpg"/></td><tdwidth="194"><imgsrc="images/C#.jpg"/></td></tr><tr><tdheight="35"align="center"valign="middle"><ahref="message.html">查看详情</a></td><tdalign="center"valign="middle"><ahref="message.html">查看详情</a></td></tr><tr><tdheight="227"><imgsrc="images/Java.jpg"/></td><td><imgsrc="images/VB.jpg"/></td></tr><tr><tdheight="35"align="center"valign="middle"><ahref="message.html">查看详情</a></td><tdalign="center"valign="middle"><ahref="message.html">查看详情</a></td></tr></table>代码3
CSS样式表CSS规则选择符又称选择器,是CSS中很重要的概念,所有HTML语言中的标记都是通过不同的CSS选择器进行控制的。属性主要包括字体属性、文本属性、背景属性、布局属性、边界属性、列表项目属性、表格属性等内容。其中一些属性只有部分浏览器支持,因此使CSS属性的使用变得更加的复杂。属性值为某属性的有效值。属性与属性值之间以“:”号分隔。当有多个属性时,使用“;”分隔。图2.16为大家标注了CSS语法中的选择器、属性与属性值。CSS选择器标记选择器HTML页面是由很多标记组成,例如图片标记<img>、超链接标记<a>、表格标记<table>等。而CSS标记选择器就是声明页面中哪些标记采用哪些CSS样式。例如a选择器,就是用于声明页面中所有<a>标记的样式风格。<style>a{font-size:9px;color:#F93;}</style>CSS选择器类别选择器<style>.onefont-family:宋体;font-size:24px;color:red;}.two{font-family:宋体;font-size:16px;color:red;}.three{font-family:宋体;font-size:12px;color:red;}</style><body><h2class="one">应用了选择器one</h2<p>正文内容1</p><h2class="two">应用了选择器two</h2><p>正文内容2</p><h2class="three">应用了选择器three</h2><p>正文内容3</p></body>CSS选择器id选择器<style> #first{font-size:18px}#second{font-size:24px}#three{font-size:36px}</style><body><pid="first">ID选择器</p> <pid="second">ID选择器2</p><pid="three">ID选择器3</p></body>在页面中包含CSS行内样式<tablewidth="200"border="1"align="center"><tr><td><pstyle="color:#F00;font-size:36px;">行内样式一</p></td></tr><tr><td><pstyle="color:#F00;font-size:24px;">行内样式二</p></td> </tr><tr><td><pstyle="color:#F00;font-size:18px;">行内样式三</p></td></tr><tr><td><pstyle="color:#F00;font-size:14px;">行内样式四</p></td></tr></table>在页面中包含CSS包含内嵌样式表<style> #first{font-size:18px}#second{font-size:24px}#three{font-size:36px}</style><body><pid="first">ID选择器</p> <pid="second">ID选择器2</p><pid="three">ID选择器3</p></body>在页面中包含CSS链接式样式表<linkrel=’stylesheet’href=’path’type=’text/css’>4
JavaScript脚本基础01网页中使用JavaScript02JavaScript的语法03JavaScript的数据类型04 运算符的使用05函数06 常用对象什么是JavaScript什么是JavaScript?JavaScript是一种基于对象和事件驱动并具有安全性能的解释型脚本语言。它不需要进行编译,而是直接嵌入在HTTP页面中,把静态页面转变成支持用户交互并响应应用事件的动态页面。JavaScript的特点解释性基于对象事件驱动安全性跨平台JavaScript的特点JavaScript与Java的区别基于对象和面向对象JavaScript是一种基于对象和事件驱动的脚本语言,它本身提供了非常丰富的内部对象供设计人员使用;而Java是一种真正的面向对象的语言,即使是开发简单的程序,也必须设计对象。解释和编译JavaScript是一种解释性编程语言,其源代码在发往客户端执行之前不需经过编译,而是将文本格式的字符代码发送给客户端由浏览器解释执行;而Java的源代码在传递到客户端执行之前,必须经过编译才可以执行。弱变量和强变量JavaScript采用弱变量,即变量在使用前无须声明,解释器在运行时将检查其数据类型;而Java则使用强类型变量检查,即所有变量在编译之前必须声明。在Web页面中使用JavaScript<scriptlanguage="javascript">varnow=newDate();varhour=now.getHours();varminu=now.getMinutes();alert("您好!现在是"+hour+":"+minu+"\r欢迎访问我公司网站!");</script>在页面中直接嵌入JavaScript在Web页面中使用JavaScript<scriptlanguage="javascript"src="javascript.js"></script>链接外部JavaScriptJavaScript的语法JavaScript区分大小写每行结尾的分号可有可无alert("您好!欢迎访问我公司网站!")alert("您好!欢迎访问我公司网站!");username≠
userNameJavaScript的数据类型类型说明举例数值型JavaScript的数值型数据又可以分为整型和浮点型两种7293.1415926字符型字符型数据是使用单引号或双引号括起来的一个或多个字符。'a'布尔型布尔型数据只有两个值,即true或false,主要用来说明或代表一种状态或标志。在JavaScript中,也可以使用整数0表示false,使用非0的整数表示true。true,false,0,1转义字符以反斜杠开头的不可显示的特殊字符通常称为控制字符,也被称为转义字符。\b
\n\f\t\r\’\”\\空值JavaScript中有一个空值(null),用于定义空的或不存在的引用。如果试图引用一个没有定义的变量,则返回一个null值。vartmp=null;未定义值当使用了一个并未声明的变量,或者使用了一个已经声明但没有赋值的变量时,将返回未定义值(undefined)。vartmp;运算符的应用运算符描
述示
例=将右边表达式的值赋给左边的变量userName="mr"+=将运算符左边的变量加上右边表达式的值赋给左边的变量a+=b//相当于a=a+b-=将运算符左边的变量减去右边表达式的值赋给左边的变量a-=b//相当于a=a-b*=将运算符左边的变量乘以右边表达式的值赋给左边的变量a*=b//相当于a=a*b/=将运算符左边的变量除以右边表达式的值赋给左边的变量a/=b//相当于a=a/b%=将运算符左边的变量用右边表达式的值求模,并将结果赋给左边的变量a%=b//相当于a=a%b&=将运算符左边的变量与右边表达式的值进行逻辑与运算,并将结果赋给左边的变量a&=b//相当于a=a&b|=将运算符左边的变量与右边表达式的值进行逻辑或运算,并将结果赋给左边的变量a|=b//相当于a=a|b^=将运算符左边的变量与右边表达式的值进行异或运算,并将结果赋给左边的变量a^=b//相当于a=a^bJavaScript中的赋值运算符运算符的应用运
算
符描
述示
例+加运算符4+6//返回值为10-减运算符7-2//返回值为5*乘运算符7*3//返回值为21/除运算符12/3返回值为4%求模运算符7%4返回值为3++自增运算符。该运算符有两种情况:i++(在使用i之后,使i的值加1);++i(在使用i之前,先使i的值加1)i=1;j=i++//j的值为1,i的值为2i=1;j=++i//j的值为2,i的值为2--自减运算符。该运算符有两种情况:i--(在使用i之后,使i的值减1);--i(在使用i之前,先使i的值减1)i=6;j=i--//j的值为6,i的值为5i=6;j=--i//j的值为5,i的值为5JavaScript中的算术运算符函数的定义函数是由关键字function、函数名加一组参数以及置于大括号中需要执行的一段代码定义的。functionfunctionName([parameter1,parameter2,……]){statements;[returnexpression;]}函数的调用<formname="form1"method="post"action="">请输入真实姓名:<inputname="realName"type="text"id="realName"size="40"><br><br><inputname="Button"type="button"class="btn_grey" onClick="checkRealName()"value="检测"></form><scriptlanguage=“javascript”>functioncheckRealName(){varstr=form1.realName.value;if(str==""){alert("请输入真实姓名!");form1.realName.focus();return;}else{varobjExp=/[\u4E00-\u9FA5]{2,}/;if(objExp.test(str)==true){//判断是否匹配alert("您输入的真实姓名正确!");}else{alert("您输入的真实姓名不正确!");}}}</script>String对象方法名说明string.indexOf(subString[,startIndex])返回String对象内第一次出现子字符串的字符位置。string.substr(start[,length])返回指定字符串的一个子串string.replace(regExp,substring);替换一个与正则表达式匹配的子串string.split(delimiter,limit);将字符串分割为字符串数组属性名说明string.length返回String对象的长度属性方法Math对象属性属
性描
述E欧拉常量(2.718281828459045)LN22的自然对数(0.6931471805599453)LN1010的自然对数(2.3025850994046)SQRT22的平方根(1.4142135623730951)LOG2E以2为底数的e的对数(1.4426950408889633)LOG10E以10为底数的e的对数(0.4342944819032518)PI圆周率常数π(3.141592653589793)SQRT1-20.5的平方根(0.7071067811865476)属
性描
述示
例abs(x)返回x的绝对值Math.abs(-10);ceil(x)返回大于或等于x的最小整数Math.ceil(1.05);Math.ceil(-1.05);cos(x)返回x的余弦值Math.cos(0);exp(x)返回e的x乘方Math.exp(4);floor(x)返回小于或等于x的最大整数Math.floor(1.05);Math.floor(-1.05);log(x)返回x的自然对数Math.log(1);max(x,y)返回x和y中的最大数Math.max(2,4);min(x,y)返回x和y中的最小数Math.min(2,4);pow(x,y)返回x对y的次方Math.pow(2,4); random()返回0和1之间的随机数Math.random(); round(x)返回最接近x的整数,即四舍五入函数Math.round(1.05); Math.round(-1.05); sqrt(x)返回x的平方根Math.sqrt(2);
方法Date对象方法描述示例方法描述示例getTimezoneOffset()返回日期的本地时间和UTC表示之间的时差,以分钟为单位newDate().getTimezoneOffset();toLocaleDateString()返回日期部分的字符串,采用本地日期newDate().toLocaleDateString();getTime()返回Date对象的内部毫秒表示。注意,该值独立于时区,所以没有单独的getUTCtime()方法newDate().getTime();toLocaleTimeString()返回时间部分的字符串,采用本地时间newDate().toLocaleTimeString();toDateString()返回日期部分的字符串表示,采用本地时间newDate().toDateString();toTimeString()返回时间部分的字符串表示,采用本地时间newDate().toTimeString();toUTCString()将Date对象转换成一个字符串,采用世界时newDate().toUTCString();valueOf()将Date对象转换成其内部毫秒格式newDate().valueOf();方法Window对象属性描述document对窗口或框架中含有文档的Document对象的只读引用defaultStatus一个可读写的字符,用于指定状态栏中的默认消息frames表示当前窗口中所有Frame对象的集合location用于代表窗口或框架的Location对象。如果将一个URL赋予该属性,则浏览器将加载并显示该URL指定的文档length窗口或框架包含的框架个数history对窗口或框架的history对象的只读引用name用于存放窗口对象的名称status一个可读写的字符,用于指定状态栏中的当前信息top表示最顶层的浏览器窗口parent表示包含当前窗口的父窗口opener表示打开当前窗口的父窗口closed一个只读的布尔值,表示当前窗口是否关闭。当浏览器窗口关闭时,表示该窗口的Window对象并不会消失,不过其closed属性被设置为trueself表示当前窗口screen对窗口或框架的screen对象的只读引用,提供屏幕尺寸、颜色深度等信息navigator对窗口或框架的navigator对象的只读引用,通过navigator对象可以获得与浏览器相关的信息属性Window对象方法描述方法描述alert()弹出一个警告对话框setTimeout(timer)在经过指定的时间后执行代码confirm()显示一个确认对话框,单击“确认”按钮时返回true,否则返回falseclearTimeout()取消对指定代码的延迟执行prompt()弹出一个提示对话框,并要求输入一个简单的字符串moveTo(x,y)将窗口移动到一个绝对位置blur()将键盘焦点从顶层浏览器窗口中移走。在多数平台上,这将使窗口移到最后面moveBy(offsetx,offsety)将窗口移动到指定的位移量处close()关闭窗口resizeTo(x,y)设置窗口的大小focus()将键盘焦点赋予顶层浏览器窗口。在多数平台上,这将使窗口移到最前边resizeBy(offsetx,offsety)按照指定的位移量设置窗口的大小open()打开一个新窗口print()相当于浏览器工具栏中的“打印”按钮scrollTo(x,y)把窗口滚动到x,y坐标指定的位置setInterval()周期执行指定的代码scrollBy(offsetx,offsety)按照指定的位移量滚动窗口clearInterval()停止周期性地执行代码方法5
jQuery技术什么是jQueryjQuery是一套简洁、快速、灵活的JavaScript脚本库,它是由JohnResig于2006年创建的,它帮助我们简化了JavaScript代码。配置jQuery引入jQuery<scriptsrc="JS/jquery-1.7.2.min.js"type="text/javascript"></script><scriptlanguage="javascript"src="JS/jquery-1.7.2.min.js"></script>或jQuery的工厂函数从一个"$"符号和一对"()"开始在参数中使用标记名$("div"):用于获取文档中全部的<div>。在参数中使用ID$("#username"):用于获取文档中ID属性值为username的一个元素。在参数中使用CSS类名$(".btn_grey"):用于获取文档中使用CSS类名为btn_grey的所有元素一个简单的jQuery脚本<html><head><metacharset="utf-8"><title>我的第一个jQuery脚本</title><scripttype="text/javascript"src="JS/jquery-1.7.2.min.js"></script><script>$(document).ready(function(){$("a").click(function(){alert("我的第一个jQuery脚本!");});});</script></head><body><ahref="#">弹出提示对话框</a></body></html>小结本章主要对ASP.NET网页开发时必备的知识进行了详细讲解,包括ASP.NET的基本网页语法、HTML、CSS、JavaScript和jQuery等。ASP.NET网页语法是开发ASP.NET网站必须要熟悉的内容;而HTML是构成网页的灵魂,对于制作一般的网页,尤其是静态网页来说,HTML完全可以胜任,但如果要制作漂亮的网页,CSS是不可缺少的;另外,本章还对JavaScript脚本和当前主流的jQuery技术进行了讲解。学习本章内容,如果已经有相关技术经验,本章内容熟悉即可;但是如果没有任何网页基础,则除了熟练掌握本章所讲的内容外,还要学会延伸学习,多参考相关的专题书籍和技术博客,进行深入学习。上机指导创建一个用户注册的页面,让用户输入用户名、密码、电话和邮箱,使用Javascript脚本完成密码校验、电话号码校验、邮箱校验和空内容校验。C#语法基础01C#语言简介02代码编写规则03基本数据类型04常量和变量05表达式与运算符06选择语句07循环语句08跳转语句09数组的基本操作10面向对象程序设计1
C#语言简介C#语言简介
引入
C#,读作CSharp,是微软公司设计的一种编程语言,是从C和C++基础上开发出来的一种简单、面向对象和类型安全的编程语言,并且能够与.NET
Framework完美结合。注意安德斯·海尔斯伯格(AndersHejlsberg,1960.12~),丹麦人,TurboPascal编译器的主要作者,Delphi和C#之父,同时也是·NET创立者。C#创始人2014年6月C#4.6预览版(.NET4.6)2012年8月15日C#4.5发布(.NET4.5)2010年4月12日C#4.0发布(.NET4.0)2007年11月20日C#3.0发布(.NET3.5)2005年11月7日C#2.0发布(.NET2.0)2002年2月13日C#1.0发布(.NET1.0)2000年6月C#语言发布C#的发展历史C#的特点封装、继承、多态通过.NET框架运行,不直接操作内存2
代码编写规则尽量使用接口编程关键语句一定编写注释局部变量随用随声明尽量少用goto语句如果参数多,建议使用结构避免对大段代码使用try...catch同一个文件中避免编写多个类字符串多变时,用StringBuilderif语句块中使用“{}”switch语句中一定编写default代码编写规则死记硬背Pascal命名法:所有单词第一个字母大写,其它字母小写如UserGetInfo两种命名方法Camel命名法:除了第一个单词,所有单词第一个字母大写,其它字母小写如userIduserName
接口
一切接口开始于“I”
类名
功能与操作的完美结合
方法名
动宾关系,实现何种操作
成员变量
尽可能加前缀“_”
项目名
公司域名+产品名称
命名空间名
公司名称/产品名称程序中元素的命名规范代码注释及规则行注释12块注释3
基本数据类型基本数据类型值类型直接存储值30ageageage2intage=30;3030intage2=age;ageage23035age2=35;值类型整数类型inti=10;intj=-10;uintm=10;uintn=-10;示例类型说明(8位等于1字节)范围sbyte8位有符号整数-128~127short16位有符号整数-32768~32767int32位有符号整数-2147483648~2147483647long64位有符号整数-9223372036854775808~9223372036854775807byte8位无符号整数0~255ushort16位无符号整数0~65535uint32位无符号整数0~4294967295ulong64位无符号整数0~18446744073709551615类型说明范围float精确到7位数1.5×10-45~3.4×1038double精确到15~16位数5.0×10-324~1.7×10308decimal精确到28位数±1.0×10-28~±7.9×1028floattheMySum=9.27f;floattheMuSums=1.12F;doublemyDou=927d;doublemudou=112D;decimalmoney=1.12m;或者decimalmoney=1.12M;浮点类型bool类型
布尔类型主要用来表示true/false值,C#中定义布尔类型时,需要使用bool关键字。例如,下面代码定义一个布尔类型的变量:boolx=true;
bool类型的默认值是false。C#语言中,使用char/Char类定义字符,并且字符只能用单引号括起来charch1=‘m’;Charch1=‘m’;‘M’‘5’‘男’‘bool’‘5.2’“ch”×××检查下面这些是否是合法的字符字符类型语法student1student1.Name=“m”Name=“m”引用类型存储对值的引用student1studnet2Name=“n”student2.Name=“n”student2=student1引用类型Name=“m”两个变量都发生变化student1studnet2
.NET中预定义的两种引用类型类型说明objectobject类型在.NETFramework中是Object的别名。在C#的统一类型系统中,所有类型(预定义类型、用户定义类型、引用类型和值类型)都是直接或间接从Object继承的stringstring类型表示零或更多Unicode字符组成的序列
值类型与引用类型的区别在这里在哪里4
常量和变量
定义:不能被改变的量323680x2F3.143.14F3.14M‘A’“HelloWorld”turefalse常量constdoublePI=3.1415926;常量的分类字面常量符号常量const
引入
在数学中,我们对变量的概念有一定的了解和认识,如y=x2,其中,x、y都是变量。
那么,在C#中的变量具体是指一个什么概念呢?其实,一个变量就是存储区(内存)中的一个存储单元。变量
变量类型变量名=数值;变量类型变量名;变量名=数值;intmoney=1000;intmoney;money=1000;变量的声明变量类型变量名1,变量名2,…,变量名n;intmoney1,money2,…moneyn;语法1、字母2、下划线‘_’首字母任意多的:1、数字2、字母3、下划线‘_’其余部分变量名C#语言中,变量命名要符合一定规则money,score,name,sex变量基本要求:简短且能清楚地表明变量的作用,通常第一个单词的首字母小写,其后单词的首字母大写。例如:myScore变量的命名规则变量的初始化赋值运算符将右边的数赋值给左边的变量变量初始化的3种方法
单独初始化变量
intsum;sum=368;
intsum=368;
inta,b,c,d,e;a=b=c=d=e=0;声明时初始化变量同时初始化多个变量5
表达式与运算符什么是表达式
引入
表达式是由运算符和操作数组成的。+、-、*和/等都是运算符,操作数包括常量、变量和表达式等。1×
4=4x*y=z符号数运算符操作数按运算符功能
按操作数个数
单目运算符
双目运算符
三目运算符
算术运算符
自增自减运算符赋值运算符
关系运算符
逻辑运算符
位运算符
条件运算符等
运算符的分类主要内容
算术运算符
自增自减运算符
赋值运算符
关系运算符
逻辑运算符
位运算符
移位运算符
条件运算符0102030405060708
运算符的优先级与结合性09
表达式中的类型转换09操作数操作数运算符+-*/%算术运算符基本的算术运算classTest{publicstaticvoidMain(String[]args)
{
doublei=-6.5;
intj=-2;
doubleresult=i%j;Console.WriteLine(result);}}使用%运算符时的注意事项
使用%运算符时,返回结果的符号与左操作数相同-0.5b=a++;相当于:b=a;a++;先取值,后自增b=--a;相当于:--a;b=a;先自减,后取值自增自减运算符
自增自减运算符不能作用于常量或者表达式=量值做读取操作,可以是常量、表达式做写的操作,被赋予等号右侧的值简单赋值运算符a+=3a&=3a>>=3a%=b-3a=a+3
a=a&3a=a>>3a=a%(b-3)算术赋值此处千万不能写成:a=a%b-3位赋值移位赋值复合赋值运算复合赋值运算符复合赋值运算符又称为带运算的赋值运算符,它其实是将赋值运算符与其他运算符合并成一个运算符来使用,从而同时实现两种运算符的效果。
大于
>等于==不等于
!=大于或等于
>=小于或等于
<=小于
<关系运算关系运算符真变假,假变真全假才假全真才真
与
&&(&)或
||(|)非
!逻辑运算符0变1,1变0有1即为1有0即为0全0或全1才为0位运算符位运算符位或|位取反~位异或^位与&
0000000000001100&
0000000000001000
0000000000001000
0000000000000100|
0000000000001000
0000000000001100十进制12和
8进行与运算十进制4和8进行或运算位与运算位或运算位运算符示例位与运算的结果为8位或运算的结果为12
0000000000011111^
0000000000010110
0000000000001001~
0000000001111011
1111111110000100位异或运算位取反运算位运算符示例位异或运算的结果为9位取反运算的结果为-124十进制31和22进行异或运算十进制123进行取反运算0011000001100000左移后补0左移1位0被舍弃移位运算符十进制:48十进制:9696=48*2,192=48*2211000000左移2位左移后补00被舍弃十进制:192左移相当于乘以2的n次幂之左移位运算001100000001100010110000右移位运算十进制:48十进制:24十进制:-80十进制:-20111011000被舍弃0被舍弃右移1位右移后补0右移2位右移后补124=48/2-20=-80/22右移相当于除以2的n次幂判断公式?结果1:
结果2;示例条件运算符if(判断公式)
结果1else
结果2
intage=50;stringinfo=age>40?"人到中年了!":"这正是黄金奋斗的年龄";
简称含义运算符数目结合性单单目++,--,!,~单目←算算术*,/,%双目→+,-双目→位移位<<,>>双目→关关系>,>=,<,<=双目→==,!=双目→逻逻辑&&双目→||双目→条条件?:三目←赋赋值=,+=,-=,*=,/=,%=双目←运算符的优先级与结合性优先级从高到底表达式中的类型转换之隐式类型转换在某种条件下,系统自动完成类型转换(即隐式类型转换)两种类型兼容例如:double兼容int类型目标类型精度大于源类型例如:double类型大于int类型(类型名)表达式intb=(int)10.2;doublea=10.5;intc=(int)a;1Convert.To类型名(表达式)doublea=10.5;intc=Convert.ToInt32(a);2类型名.Parse(表达式)doublea=10.5;intc=Int.Parse(a.ToString());3显式类型转换数值类型值类型引用类型装箱拆箱装箱和拆箱6
选择语句主要内容
if语句01
switch语句02最简单的if语句(1)表达式必须使用圆括号括起来(2)表达式:关系表达式或逻辑表达式(3)“语句”可以使单语句也可以是复合语句if(表达式){
语句}语法if…else语句(1)表达式:关系表达式或逻辑表达式(2)“语句1或者语句2”可以是单语句也可以是复合语句if(表达式){
语句1}else{
语句2}语法if…else语句与条件运算符if(表达式)
语句1else
语句2
表达式?语句1:
语句2;尝试使用条件运算符对前面判断某个数是奇数还是偶数的实例进行修改。if语句多于else语句的问题
程序中使用if…else语句时,如果出现if语句多于else语句的情况,在没有特殊处理的情况下,else永远都与最后出现的if语句相匹配。if(表达式1){
语句1}elseif(表达式2){
语句2}…elseif(表达式n){
语句n}else{
语句n+1}注意:else和if之间有一个空格if…elseif…else语句
表达式1
假语句1
真语句n+1
表达式2
语句2
真假真假表达式n
真假语句n
…………if语句的嵌套if(表达式1){if(表达式2){//表达式2为真时执行……}else{//表达式2为假时执行……}}if(表达式1){if(表达式2){//表达式2为真时执行……}
elseif(表达式3)
{//表达式3为真时执行……}}else{//表达式1为假时执行……}if语句中嵌套if…else1if…else中嵌套if…elseif2任意互相嵌套使用if语句的嵌套判断用户输入的年份是不是闰年。switch(表达式){case常量表达式1:
语句1;break;case常量表达式2:
语句2;break;…case常量表达式n:
语句n;break;default:
语句n+1;break;}整型/char/string/bool类型
用于退出switch语句,不能省略注意:这里是冒号,不是分号switch多分支语句switch多分支语句的执行流程7
循环语句主要内容
while循环语句01
do…while循环语句02
for循环语句03while循环语句(1)表达式:关系表达式或逻辑表达式(2)“语句”中应该有能够使循环结束的条件语句(3)如果表达式一开始为假,则循环体中的语句一次都不执行while(表达式){
语句}语法使用while循环实现1到100的累加和。do…while循环语句(1)表达式:关系表达式或逻辑表达式(2)while表达式后面的分号一定不能省略(3)循环体中的语句至少执行一次do{
语句}while(表达式);语法使用do…while循环实现1到100的累加和。0遍1遍想一想,下边两段代码分别被执行几遍??while和do…while的区别for循环语句(1)表达式1通常用来初始化循环变量(2)表达式2是一个关系表达式或逻辑表达式,用来作为判断条件(3)表达式3通常用来对循环变量进行递增或递减操作,以便存在能够使循环结束的条件(4)表达式之间用分号连接,分号一定不能省略for(表达式1;表达式2;表达式3){
语句}语法使用for循环实现1到100的累加和。for循环应用8
跳转语句主要内容
break语句01
continue语句02
goto语句03break在循环中的使用inti,sum=0;for(i=1;;i++){sum+=i;}inti,sum=0;for(i=1;;i++){if(i>100){
break;}
sum+=i;}修改(1)break语句通常应用在switch、while、do…while或for循环中(2)break一般与if语句搭配使用,用来跳出循环“死循环”continue的使用(1)continue语句通常应用在while、do…while或for循环中(2)continue一般与if语句搭配使用,用来开始一次新的循环?2+4+6+8+……+100=?inti,sum=0;for(i=1;i<=100;i++){
if(i%2==1)continue;sum+=i;}break和continue的区别breakcontinue使用goto语句实现1到100的累加。goto语句的使用gotoLable;Console.WriteLine(“themessagebeforeLabel”);Lable:Console.WriteLine(“theLabelmessage”);goto标签;语法改变代码执行顺序goto使用说明goto语句可以忽略当前程序的逻辑,直接使程序跳转到某一语句执行,有时非常方便,但是也正是由于goto语句的这种特性,在程序开发中一般不主张使用goto语句,以免造成程序流程的混乱,使理解和调试程序都产生困难。9
数组的基本操作主要内容
数组的声明01
初始化数组02数组的概念
引入数组是包含若干相同类型的变量的集合。这些变量可以通过索引进行访问。数组的索引从0开始。数组的声明
声明一维数组
type[]arrayName;type[,]arrayName;
声明二维数组初始化数组
初始化一维数组int[]arr=newint[5];int[]arr1=newint[5]{1,2,3,4,5};string[]arrStr;arrStr=newstring[7]{"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};string[]arrStr={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};int[,]array=newint[4,2]int[,]arr2=newint[3,2]{{1,2},{3,4},{5,6}};int[,]array;array=newint[,]{{1,2},{3,4},{5,6},{7,8}};int[,]array4={{1,2},{3,4},{5,6},{7,8}};
初始化二维数组10
面向对象程序设计对象、类、实例化对象=(算法+数据结构)程序=(对象+对象+……)封装面向对象程序设计语言的三大原则继承面向对象程序设计语言的三大原则多态面向对象程序设计语言的三大原则
继承中提到了父类和子类,其实将父类对象应用于子类的特征就是多态。依然以图形类来说明多态,每个图形都拥有绘制自己的能力,这个能力可以看作是该类具有的行为,如果将子类的对象统一看作是父类的实例对象,这样当绘制任何图形时,可以简单地调用父类也就是图形类绘制图形的方法即可绘制任何图形,这就是多态最基本的思想。
类是一种数据结构,它可以包含数据成员(常量和域)、函数成员(方法、属性、事件、索引器、运算符、构造函数和析构函数)和嵌套类型。
类(class)实际上是对某种类型的对象定义变量和方法的原型,它表示对现实生活中一类具有共同特征的事物的抽象,是面向对象编程的基础。类的概念类修饰符class类名{}类的声明publicclassCar{publicintnumber;
publicstringcolor;
privatestringbrand; }语法对象的创建及使用
对象的创建Testtest=newTest();Testtest=newTest("a");cStockInfostockInfo=newcStock
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年产品经理年度专业能力提升计划
- 上海立达学院《安全生产技术》2025-2026学年第一学期期末试卷(A卷)
- 2026年医院医疗废物暂存点洗手台设置要求
- 2026年垃圾焚烧发电厂烟气净化系统安装
- 2026年学校突发公共卫生事件应急预案编制
- 上海立信会计金融学院《安全管理与法规》2025-2026学年第一学期期末试卷(B卷)
- 上海立信会计金融学院《安全检测与监控》2025-2026学年第一学期期末试卷(B卷)
- 2026年超声科盆底超声检查技术操作规范培训
- 2026年喷码机日常维护保养计划表
- 大连东软信息学院《Android 程序设计》2025-2026学年第一学期期末试卷(B卷)
- 2026湖南衡阳市南岳区招聘事业单位人员42人备考题库附答案详解
- 2026年教师资格证(小学)《教育教学知识与能力》真题及答案解析
- 广东省深圳市宝安区2025-2026学年五年级下学期数学期中试题(范围第一单元~第四单元)
- 管水人员协议书
- 2026年青海省西宁市中考化学一模试卷(含答案)
- 中国石油2026年春季高校毕业生招聘考试备考题库及答案解析
- 肺结节早期筛查与预防措施
- 2026年天津市专业技术人员继续教育网公需课答案
- 2023年日本介护特定技能考试全真题库及标准答案
- 2023年驾驶员技能竞赛实际操作项目及评分标准
- GB/T 2637-2016安瓿
评论
0/150
提交评论