摘要:
阅读目录 一:合成/聚合复用原则 二:什么是合成? 三:什么是聚合? 四:为什么尽量不要使用类继承而使用合成/聚合? 五:合成/聚合复用原则结构图 一:合成/聚合复用原则 尽量使用合成/聚合,尽量不要使用类继承 二:什么是合成? . 合成表示一种强的拥有关系,体现了严格的部分和整体的关系,部分和整体的生命周期一样,打个比方:人有两个胳膊,胳膊和人就是部分和整体的关系,人去世了,那么胳膊也就没用了,也就是说胳膊和人的生命周期是相同的 . 合成关系用实心的菱形+实线来表示 三:什么是聚合? . 聚合表示一种弱的拥有关系,体现的是A对象可以包含B对象,但是B对象并不是A对... 阅读全文
摘要:
阅读目录 一:属性 二:自定义属性类BookAttribute实例 . 属性是由属性类来实现的,向上篇文章《C#温故而知新学习系列之.NET框架高级特性—.NET框架中自身提供的属性(二)》我们讲的Obsolete一样,我们还可以自定义属性类,属性类是由System.Attribute派生而来的 . 阅读全文
摘要:
阅读目录 一:特性 二:如何指定属性? 三:.NET框架提供了哪些内置属性? 四:实例 一:特性 . C#允许在类和类成员上声明特性,这些特性其实也是个类,可以在运行时解释类和类成员的行为,这个特性我们也称之为属性Attribute . .NET框架提供的内置属性比如:Obsolete是一种特殊的用以声明式的编程机制,其类型是一族继承自System.Attribute的类型,在编译时,这些.NET内置属性会被写入元数据中,以供程序运行或者反射使用 . 允许在其上面声明属性的类型有 1:类和类成员 2:结构 3:接口和接口成员 4:枚举和枚举成员 5:委托 二:如... 阅读全文
摘要:
阅读目录 一:什么是元数据? 二:概述.NET框架中的反射 一:什么是元数据? 元数据,就是描述数据的数据,它存储在PE文件中,PE文件由IL Code和元数据组成,元数据为.NET提供了丰富的自我描述特性,它使得开发人员可以在代码运行时获得组件的类型等信息 二:概述.NET框架中的反射 反射是.NET框架中最独特的一个特点,这一点在其他技术框架中都没有对应的概念,反射在.NET框架中的地位非常重要,正是存在元数据等信息,才构成.NET系统运行的基础,元数据是反射机制能够动作的基石,元数据存储了类型内部的所有信息,因此可以在.NET框架中运用反射机制可以动态的分析程序集... 阅读全文
摘要:
阅读目录 一:前言 二:接口和抽象类的区别是什么? 一:前言 在面向对象编程中,抽象是指定继承者或者实现者必须遵循的一个协定,比如:一个类如果继承或者实现一个接口,那么该类就必须实现该接口的所有成员,接口就是对类的抽象,类必须遵循实现接口所有成员的协定 二:接口和抽象类的区别是什么? 接口和抽象类型是用于在面向对象编程中实现抽象的两种机制,那么在面向对象设计时,什么情况下使用接口实现抽象?什么情况下又使用抽象类型实现抽象呢? 1:接口不能提供成员的实现细节,而抽象类型可以提供成员的实现细节,也就是说接口中的所有方法必须是抽象的,像下面的InserUser()和IGetName... 阅读全文
摘要:
阅读目录 一:前言 二:SOAPHeader实现身份验证步骤 三:通过SOAPHeader实现身份验证步骤实例 一:前言 在互联网上,调用WebService往往需要进行身份验证,我们的WebService不可以让任何人都能够调用的,一般能调用我们的WebService的不是我们的客户,就是我们的合作方,调用WebService时我们需要身份验证,只有通过身份验证的用户才能调用相应的WebService资源,我们可以通过SOAPHeader自定义的身份验证方式实现验证 二:SOAPHeader实现身份验证步骤 1:自定义一个类比如CustomSOAPHeader,该类继承自S... 阅读全文
摘要:
阅读目录 一:同步调用 二:异步调用 三:同步调用WebService 四:异步调用WebService 一:同步调用 一个同步操作会阻塞整个当前的进程,直到这个操作完成才能执行下一段代码 二:异步调用 不会阻塞启动操作的调用线程,调用程序必须通过轮流检测,或者等待完成信号来发现调用的完成 三:同步调用WebService 同步调用WebService就是我们平常的调用的写法 1:AsynCall.asmx的AsynCall.cs代码 1 /// <summary> 2 /// 根据学生姓名得到该学生的成绩 3 ... 阅读全文
摘要:
阅读目录 一:WebService中的方法是否允许重载? 二:为什么WebService中不支持方法的重载? 三:如何解决WebService中方法的重载? 一:WebService中的方法是否允许重载? WebService中不支持使用方法的重载,从图片我们能够得出结论 1 [WebMethod] 2 public string GetName() 3 { 4 return "从小就犯困"; 5 } 6 7 [WebMethod] 8 public string GetName(string strValue) 9 {10 ... 阅读全文
摘要:
阅读目录 一:实例 一:实例 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; namespace ThreadDelegate 阅读全文
摘要:
阅读目录 一:应用程序域概述 二:应用程序域和线程的关系 三:线程跨越多个应用程序域实例 四:运行效果 一:应用程序域 . 在.NET中有个特点,在.NET中有个CLR,在操作系统和我们编程环境之间有个CLR,操作系统和CLR之间有种隔离,操作系统和运行库会在应用程序间提供某种隔离,为了确保一个应用 阅读全文
摘要:
一:技术路线 适合喜欢技术,对技术狂热的人,愿意一辈子去搞技术的人,当然这需要在工作及平时的生活中不断的学习和研究,虽然系统分析师和架构师的工作令人羡慕,也是很多公司挖掘的对象,虽然国内的系统分析师和架构师比较抢手,但是要成为真正的这个角色还是相当困难的,自己必须拥有很强的专业技能和系统分析能力,另外,国内对这类职位的需求量不是很大,只有实力雄厚的公司才会设置系统分析师和架构师的职位 二:管理路线 这也是绝大部分程序员的要走的路线,当程序员到达高级程序员后,向管理方面转变,经过开发小组负责人,工程负责人,奋斗到项目经理,这种路线适合有一定沟通能力和协调能力的人,走向管理并不是放弃... 阅读全文
摘要:
阅读目录 一:委托与线程 二:委托使用的实例 三:运行效果 一:委托与线程 .委托基础 -委托使用的目的:把函数作为参数传递 -类似于C++中的函数指针,和函数指针是有区别的:函数指针只能引用静态方法,而委托可以引用静态方法,也可以引用实例方法,当委托引用实例方法时,委托不仅存储对方法入口点的引用, 阅读全文
摘要:
阅读目录 一:前言 二:实例 三:运行效果 一:前言 前一节说了我们创建线程的参数是一个函数,当新的线程启动的时候,它就会执行这个函数,这个函数是没有任何参数的,且没有返回值的,那么新的需求来了,如何调用一个有参数的函数呢?我们上节是利用构造函数传递参数的,这节我们利用其它的方法实现 二:实例 us 阅读全文
摘要:
阅读目录 一:为什么要添加客户端脚本? 二:ASP.NET服务器控件可以发送两种客户端脚本 三:ASP.NET中发送客户端脚本 四:ASP.NET中发送HTML属性 五:实例 一:为什么要添加客户端脚本? 尽管从技术角度讲ASP.NET服务器控件的所有功能都可以在服务器端执行,我们知道因为服务器控件 阅读全文
摘要:
阅读目录 一:ASP.NET窗口事件处理 二:委托式的事件处理模式 三:重载式的事件处理模式 一:ASP.NET窗口事件处理 . 事件驱动是窗口程序设计的核心,不了解事件驱动就无法进入窗口程序设计的殿堂 . Windows中的事件和ASP.NET中的事件的区别是什么? 在Windows中我们的机器是 阅读全文
摘要:
阅读目录 一:事件概述 二:ASP.NET中的事件 三:实例 四:运行效果 一:事件概述 Windows操作系统启动的时候,要加载硬件,加载硬件驱动,加载软件等等,启动以后只要你不点击它,它就没有任何的反应,当你单击“开始”菜单的时候,就会弹出一个菜单来,大部分的程序都是面向事件驱动的,什么是事件驱 阅读全文
摘要:
阅读目录 一:前言 二:第一次思考 三:第二次思考 四:第三次思考 一:前言 在我们做的一些项目中经常会碰到把行转化为列的问题,那么我们今天就来探讨一下,我们怎么样把表1转化为表2的格式 图一 图二 二:第一次思考 可以看得出来,表2列是由表1的数据行转化而来的,只有Name列是表1中的列,一步一步 阅读全文
摘要:
阅读目录 一:实例 二:运行效果 一:实例 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int[] numbers = { 3, 2, 7, 5, 8, 11, 29, 30, 4 }; ... 阅读全文
摘要:
一:什么是对称算法? 对称算法也被称作单密钥算法,也就是加密密钥能从解密密钥中推算出来,同样解密密钥也能从加密密钥中推算出来,说白了,就是加密密钥和解密密钥是同一个密钥,对称算法的安全性依赖于密钥,密钥被人知道了,都能对消息进行加密和解密 二:对称算法的加密和解密表示法 M表示明文,E表示加密,k表 阅读全文
摘要:
阅读目录 一:调试桥ADB 二:ADB的主要功能有哪些? 一:调试桥ADB adb是什么?adb有什么用?adb工具如何用? 是用来管理模拟器和真机的通用调试工具,该工具功能强大,直接打开cmd即可使用adb命令,adb的全称为Android Debug Bridge,是起到调试桥的作用,通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具,adb的工作方式比较特殊,采用**Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行Eclipse时adb进程就会自... 阅读全文