深入浅析SQL封装、多态与重载

所属分类: 数据库 / MsSql 阅读数: 1303
收藏 0 赞 0 分享

面向对象

1.类:众多对象抽象出来的

2.对象:类实例化出来的

3.类的定义

关键字 class

4.类里面包含

成员变量

成员属性

成员方法

5.面向对象三大特性

(1)封装

目的:保护类,让类更加安全。

做法:让类里面的成员变量变为私有的,做相应的方法或者属性去间接的操作成员变量

封装成员方法来间接操作类里面的成员变量

使用成员属性来间接访问类里面的成员变量

访问修饰符

private 私有的 只能在该类中访问

protected 受保护的 只能在该类和它的子类中访问

public 公有的 在任何地方都可以访问

构造方法(函数):

作用:造对象所要调用的方法,用来创建对象,可以对成员进行初始化

每一个类都有一个构造方法,不写也有只不过看不到而已

特殊性:写法特殊 执行时间特殊

this关键字:

this代表该对象,不是代表该类

(2)继承:

概念:子类可以继承父类的一切

特点:单继承 一个子类只能有一个父类,一个父类可以有多个子类 (所有父类都是object)

base关键字

sealed关键字:密封类 该类不可以被继承

部分类:partial 可以将一个类拆分成多个部分,分别放在多个文件内

namespace 命名空间 相当于虚拟文件夹

(3)多态:

1.编译多态

函数重载

2.运行多态

概念:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,在调用该方法的时候表现出的不同就称为多态

条件:必须要有继承 父类引用指向子类实例 子类必须对父类的方法进重写

里氏代换原则:如果有一个地方需要使用到父类对象,那么你可以将一个子类对象给他

1.函数重载

函数重载需要的条件:函数名要相同,参数的个数或者参数的类型不同

2.this关键字

虽然写在类里面,但不是属于类的,而是属于该对象的

一般来说在类里面 this关键字是可以省略的,但是如果有一个方法形参名字和成员名字重复,这时候再调用该对象里面的成员的时候需要加this关键字

3. is关键字

判断变量是不是属于某个类型

if (y2 is Ren)
{
s = "是一个人";
}
else
{
s = "不是一个人";
}

4. as关键字

转换类型(只能转换兼容类型,可以将子类对象转换为父类对象)

5.继承

子类可以继承父类的一切

特点:单继承

一个子类只能有一个父类 一个父类可以有多个子类

C#特殊点:所有类的祖先都是object

base关键字:在子类中代表父类对象,用法和this关键字相同

如果父类有构造方法,那么子类也要有构造方法,如果父类构造需要参数,那么子类构造也必须有相应的参数。
子类构造后面可以通过base调用父类的构造方法

public China(string m):base(m)
{ 
}

以上所述是小编给大家介绍的SQL封装、多态与重载,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

SQL Server评估期已过问题的解决方法

这篇文章主要为大家详细介绍了SQL Server评估期已过问题的解决方法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

sqlserver还原数据库的时候出现提示无法打开备份设备的解决方法(设备出现错误或设备脱)

今天在恢复数据库的时候,因为是异地部分还原,出现提示 无法打开备份设备 E:\自动备份\ufidau8xTmp\UFDATA.BAK 。设备出现错误或设备脱,这里分享一下解决方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

SQL数据库存储过程示例解析

这篇文章主要针对SQL数据库存储过程示例进行解析,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

SQL Server 2012 安全概述

这篇文章给你概括介绍了SQL Server 2012里的基本安全概念。你学到了一些常见的数据威胁,探寻了SQL Server背后的设计理念,学习了在整个系列文章看到的一些安全术语,算是一篇比较非公式化的开篇,希望能够勾引起大家对于sql安全的兴趣
收藏 0 赞 0 分享

探讨select in 在postgresql的效率问题

这篇文章主要介绍了探讨select in 在postgresql的效率问题 的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

SQL Server 2012 身份验证(Authentication)

这篇SQL Server安全文章,我们学习了SQL Server里的多个验证选项。Windows集成身份验证是最安全的,但并不是都是可行的,微软多年来已经让SQL Server验证更加安全。
收藏 0 赞 0 分享

SQL性能优化之定位网络性能问题的方法(DEMO)

这篇文章主要介绍了SQL性能优化之定位网络性能问题的方法的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

SQL Server 2016里的sys.dm_exec_input_buffer的问题

这篇文章主要介绍了SQL Server 2016里的sys.dm_exec_input_buffer的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

SQL Server删除表及删除表中数据的方法

本文介绍SQL Server中如何删除表,如何删除表中的数据。在删除表数据时有delete和truncate两种方法,delete和truncate有什么区别呢
收藏 0 赞 0 分享

sqlserver 因为选定的用户拥有对象,所以无法除去该用户的解决方法

这篇文章主要介绍了sqlserver 因为选定的用户拥有对象,所以无法除去该用户,因为是附加数据库选择了与源服务器一样的用户导致
收藏 0 赞 0 分享
查看更多