随笔分类 - C#.NET
学习的起点
摘要:控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup
阅读全文
摘要:输出结果是:会抛出异常,但是还会执行finally
阅读全文
摘要:一,C# 中的每个类或结构都隐式继承 Object 类。因此,C# 中的每个对象都会获得 ToString 方法,此方法返回该对象的字符串表示形式。而同时在Object 中的ToString是虚方法则可以被重写。下面是重写前和后的比较:
阅读全文
摘要:一,直接上代码,后总结: 综上总结出:如果一般方法没有使用virtual,abstract关键字,则会提示没有找到适合的方法来重写, 一,抽象方法: 1,抽象方法必须在抽象类中定义 2,抽象方法必须在派生类(子类)中实现 3,抽象类中的抽象方法无法声明主体,因为它标记为abstract 4,无法创建
阅读全文
摘要:一,什么是扩展方法? 1,扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。 2,扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。 3,扩展方法被定义为静态方法,但它们是通过实例方法语法进行调用的。 它们的第一个参数指定该方法作
阅读全文
摘要:一,C#简介 1>C#是一种面向对象的、运行于.NET Framework之上的高级程序设计语言。 2>C# 是一种简洁、类型安全的面向对象的语言,开发人员可以使用它来构建在 .NET Framework 上运行的各种安全、可靠的应用程序。 3>C#是一种安全的、稳定的、简单的、优雅的,由C和C++
阅读全文
摘要:一,值类型特性 1.C#的所有值类型均隐式派生自System.ValueType。 2.每种值类型均有一个隐式的默认构造函数来初始化该类型的默认值。例如:int i = new int();等价于:int i = 0; 3.所有的值类型都是密封(seal)的,所以无法派生出新的值类型。4.值类型的实
阅读全文
摘要:一,区别: 1,接口可以多重继承 2,接口是特殊的抽象 3,抽象类是对一种事物的抽象,即对类抽象,而接口是对行为的抽象。 4,抽象类是对整个类整体进行抽象,包括属性、行为,但是接口却是对类局部(行为)进行抽象。 5,使用抽象类是为了代码的复用,而使用接口的动机是为了实现多态性 二,应用场景: 1》,
阅读全文
摘要:一,什么是委托? 在MSDN中写着:delegate 是一种可用于封装命名或匿名方法的引用类型。 委托类似于 C++ 中的函数指针;但是,委托是类型安全和可靠的。 PS:针对这委托是类型安全和可靠的理解:委托本质是类,是强类型,.net下对象都是类型安全的(类型安全的原因:C#在编译期会检验类型,如
阅读全文
摘要:一,继承是C#中面向对象的特性之一。 继承,简单一句话就是建立类之间的关系,实现代码的重用性,方便系统扩展。继承的两大特性是单根性和传递性。 1》继承的单根性:是指子类只能继承一个父类,不能同时继承多个父类。就好比儿子只能有一个父亲(亲生),派生类只能从一个类中继承,继承不支持多重继承。避免代码结构
阅读全文
摘要:1.封装概念 封装:每个对象都包含有它能进行操作的所有信息,这个特性称为封装。这样的方法包含在类中,通过类的实例来实现。(例如下面猫的主人属性) 2.封装的优点 1》.封装还避免了命名冲突的问题,封装有隔离作用,不同的类中可以有相同名称的方法和属性,但不会混淆,也可以减少耦合(比如实现界面和逻辑分离
阅读全文
摘要:一,方法和函数的区别: 对于过程式编程就叫函数,对于面向对象编程就叫方法,大多数情况下,两者表达的是同一个意思。 二,面向过程和面向对象编程的区别又是啥: 比如我要实现白鸡和黑鸡会叫的例子: 1》面向过程实现思路 1,实现白鸡叫的函数 2,实现黑鸡叫的函数 2》面向对象的实现思路 1,我们先把鸡定义
阅读全文
摘要:一,什么是多态? 1》多态性意味着有多重形式。在面向对象编程范式中,多态性往往表现为"一个接口,多个功能" 。 2》同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态 二,实现多态的三种方式:抽象,接口,虚方法实现多态。 1》虚方法实现多态 2》接口实现多态 3》抽象实现多态
阅读全文
摘要:一,什么是泛型? 泛型:通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用。在.NET类库中处处都可以看到泛型的身影,尤其是数组和集合中,泛型的存在也大大提高了程序员的开发效率。 二,泛型的优点: 1>当在一个功能模块实现就是同一种方法,而类型不同
阅读全文
摘要:一,服务端代码 处理数据类 客户端代码:
阅读全文
摘要:一,冒泡排序法理解:就是将一个集合里的数据当前位置和后一位比较,然当前位置大于后一位,则两个位置替换,直到排序完成 二,冒泡排序拓展 类 三,泛型的冒泡排序
阅读全文
摘要:强类型 对应弱类型弱类型就是没指明类型 赋值的时候才决定类型例子:var x;你可以给x赋予任何对象。 不过C#也不是“绝对”的强类型语言,因为它也有弱类型,那就是Object。我们知道Object是所有类型的最终基类,任何类型的对象都可以使用Object来引用强类型就是 声明的时候 必须制定其类型
阅读全文
摘要:C#中的每一种类型要么是值类型,要么是引用类型,所以每个对象要么是值类型的实例,要么是引用类型的实例。
阅读全文
摘要:错误问题: 消息 245,级别 16,状态 1,第 1 行在将 varchar 值 '2,8' 转换成数据类型 int 时失败。 ps: 这是在后台分配菜单权限这个功能时出现的问题 一,解决方法: 将用户表和菜单表用CHARINDEX方法来选择存在的rows,返回集合, 二,而以上必须使用,CONV
阅读全文

浙公网安备 33010602011771号