接口

C# 面试常见问题

寵の児 提交于 2021-02-18 18:32:01
Q:接口与抽象类的区别(所有公司都问,关键是我基本上都说不全,翻了个最简单好记的答案共享) 按三点答:先答属性:抽象类可以有普通成员变量,接口不行; 然后答方法:抽象类有非抽象的方法和构造方法,并且修饰符可以是私有的,接口只能是抽象的方法,并且修饰符是public,最后说一句只能继承一个抽象类,但能实现多个接口。 Q:ADO.NET的特点,几个对象都是用来干啥的 Q:asp.net页面传值有哪些方式 Q:转发和重定向有什么不同 Q:IIS6和IIS7是怎么工作的?他们有什么不同 Q: 存储过程有什么优势 A: 存储过程是放在数据库服务器上的,最直观的就是在执行sql的时候不需要网络传输sql语句只要传输 需要执行的数据就好.存储过程是预编译的普通sql执行需到数据库中进行检查sql是否正确然后再进行编译,执行效率比普通sql高。 Q:union union all的区别 A: union 把两个表之间的数据放到一起并进行排序,去重复.union all 把两个表的数据放到一起不排序不去重。 Q:数据库删除数据有哪些方法?使用哪些命令,都有哪些效果? A:可以通过DROP TRUNCATE 以及DELETE进行数据的删除,DROP 可以删除数据库和表(整个结构),TRUNCATE在不带条件时与DELETE类似 二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE

(Interface)接口特点

核能气质少年 提交于 2020-04-08 07:04:17
接口是一种规范。只要一个类继承了一个接口,这个类就必须实现这个接口中所有的成员 为了多态。 接口不能被实例化。 也就是说,接口不能new(不能创建对象) 接口中的成员不能加“访问修饰符”,接口中的成员访问修饰符为public,不能修改。 (默认为public) 接口中的成员不能有任何实现(“光说不做”,只是定义了一组未实现的成员)。 接口中只能有方法、属性、索引器、事件,不能有“字段”和构造函数。 接口与接口之间可以继承,并且可以多继承。 接口并不能去继承一个类,而类可以继承接口 (接口只能继承于接口,而类既可以继承接口,也可以继承类) 实现接口的子类必须实现该接口的全部成员。 一个类可以同时继承一个类并实现多个接口,如果一个子类同时继承了父类A,并实现了接口IA,那么语法上A必须写在IA的前面。 class MyClass:A,IA{},因为类是单继承的。 显示实现接口的目的:解决方法的重名问题 什么时候显示的去实现接口: 当继承的借口中的方法和参数一摸一样的时候,要是用显示的实现接口 当一个抽象类实现接口的时候,需要子类去实现接口。 来源: https://www.cnblogs.com/mhg215/p/6087425.html

TMS320DM8168浮点DSP C674x + ARM Cortex-A8开发板SATA接口、USB接口

谁说我不能喝 提交于 2020-04-07 17:18:19
CPU TI TMS320DM8168 是 一款 高性能 嵌入式 32位工业级 ARM Cortex-A8 + DSP C674x 处理器。 拥有多种工业接口资源, 以下是 DM8168 CPU资源框图: SATA 接口 开发板引出了2个 7pin SATA 盘接口SATA0、SATA1, 接口 为J1、J 8 , 硬件及引脚如图: USB 接口 CON8 、CON 12 、C ON13 均为 USB 2.0 接口 。CON12、C ON13 物理接口为2个双层A型母座USB HOST口, 可以接USB摄像头、USB键盘、USB鼠标、U盘等常见的USB外设。CON 8物理接口为 Micro B型母座 ,配置为USB HOST后 它 可以通过OTG转接头转成A型母座 。对应引脚定义如下图: 来源: oschina 链接: https://my.oschina.net/u/4169033/blog/3223291

python:接口请求中出现requests.exceptions.SSLError 和 InsecureRequestWarning的解决办法

|▌冷眼眸甩不掉的悲伤 提交于 2020-04-07 15:41:04
1、在请求中加入verify=False,关闭认证---------解决requests.exceptions.SSLError 2、添加代码----------- 解决InsecureRequestWarning import urllib3 urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)    来源: https://www.cnblogs.com/erchun/p/12653525.html

防火墙双击热备

≯℡__Kan透↙ 提交于 2020-04-07 14:56:20
配置FW_A各接口的IP地址(记得开管理功能 service-manage enable) interface GigabitEthernet1/0/0 ip address 10.2.0.1 255.255.255.0 service-manage enable service-manage all permit interface GigabitEthernet1/0/5 ip address 10.3.0.1 255.255.255.0 service-manage enable service-manage all permit # interface GigabitEthernet1/0/6 ip address 10.10.0.1 255.255.255.0 service-manage enable service-manage all permit 配置FW_B各接口的IP地址(记得开管理功能 service-manage enable) interface GigabitEthernet1/0/0 undo shutdown ip address 10.2.0.2 255.255.255.0 interface GigabitEthernet1/0/5 undo shutdown ip address 10.3.0.2 255.255.255.0

创龙TMS320DM8168浮点DSP C674x + ARM Cortex-A8SATA接口、USB接口

我的梦境 提交于 2020-04-07 14:47:35
CPU TI TMS320DM8168 是 一款 高性能 嵌入式 32位工业级 ARM Cortex-A8 + DSP C674x 处理器。 拥有多种工业接口资源, 以下是 DM8168 CPU资源框图: SATA 接口 开发板引出了2个 7pin SATA 盘接口SATA0、SATA1, 接口 为J1、J2, 硬件及引脚如图: USB 接口 CON 9、CON8均为 USB 2.0 接口,应用于各种不同的移动设备间的 连 接,进行数据交换 ,传输 速度高达480Mbps 。CON9为A型母座USB HOST口, 可以接USB摄像头、USB键盘、USB鼠标、U盘等常见的USB外设。 CON 8为 Micro B型母座 USB DRD口,它不能根据 设备情况自动切换为 HOST/DEVICE模式, 需要手动 进行 软件配置 ,若配置为DEVICE模式它可直接使用Micro USB线与 PC连接,若配置为HOST模式 它 可通过OTG转接头转成A型母座 。对应引脚定义如下图: 来源: oschina 链接: https://my.oschina.net/u/4169033/blog/3223103

接口interface

依然范特西╮ 提交于 2020-04-07 11:54:35
对象类型接口 定义接口 interface List { id: number; name: string; } interface Result { data: List[] } function render(result: Result) { result.data.forEach((value) => { console.log(value.id, value.name) }) } let result = { data: [ {id: 1, name: 'A'}, {id: 2, name: 'B'} ] } render(result) // 1 "A" // 2 "B" PS:   后端有时候会传来约定之外的字段,ts并不报错。所以只要传入的对象是必要条件就是被允许的:     let result = {   data: [   {id: 1, name: 'A', sex: 'male'},   {id: 2, name: 'B'}   ]   }   但是我们直接传入对象字面量,ts就会对额外的字段进行类型检查:    render({   data: [   {id: 1, name: 'A', sex: 'male'}, // 提示错误   {id: 2, name: 'B'}   ]   })  绕过类型检查的方法 第一种方式: 将对象赋值给一个变量

大话接口隐私与安全

安稳与你 提交于 2020-04-07 10:29:37
作为后端程序猿自己写的 接口 就像自己的 孩子 一样,尽然制造出来了,那就要对他以后的人生负责到底; 随着业务的壮大,需要支撑业务接口也越来越多,使用的用户量变大,虎视眈眈的黑客们视机而动,总是在业务中寻找着可以窃取他人利益的入口,所以我们应该多考虑安全性问题,防范于未然。 场景 服务端程序猿根据需求开发出业务相关的接口,用来满足需求中用户和服务器交互的功能,提供给前端或者客户端(PC端软件,APP端应用)使用, 大部分程序猿在开发接口的时候就仅仅去考虑如何实现业务上的逻辑功能,而往往很少会去考虑接口的安全性问题, 一般服务端提供的接口都是http/https协议的,通过Fiddler,Wireshark,Charles等抓包工具,可以抓取到请求,然后进行分析,模拟请求,进行并发请求,或者修改信息的攻击。 例子: 问题1. 接口暴露用户隐私信息就相当于在光天化日下裸奔,被看光了 描述:程序猿在做业务接口的时候往往没有保护用户隐私的意识,把用户的隐私信息暴露在外面,一旦被人利用起来会给用户带来麻烦,同时被发现会降低平台的信任度; 防: 用户隐私数据加密,加*号,如用户的相关数据的JSON中有用户手机号,用户邮箱,支付账号,邮寄地址等隐私数据; 用户请求接口时需要对其隐私参数加密:如用户登陆请求登陆接口,需要将用户密码进行可逆加密,以免接口被恶意代理捕捉请求后获取明文密码;

让SpringMVC支持可版本管理的Restful接口

隐身守侯 提交于 2020-04-07 06:19:35
需求 移动互联网时代的到来,软件开发的模式也在变化。记得以前做B/S的后台开发,基本上没有Http接口一说,全部是通过渲染模板技术(jsp,freemark)把最终html展示给最终用户。现在完全变了,基于后台接口提供方,我们从来不是针对只是浏览器展示的后台输出,而是各种终端,比如android,ios。所以设计接口的时候一定要小心,一旦放出去的接口可能就永远都难以变动(除非你强制客户端用户升级)。我们知道, Restful API 已经成为接口设计的一个业务准则。如果你还不是很清楚什么是Restful,推荐你看一下这篇文章: RESTful API 设计指南 。其实,我们就是设计一套基于http协议的业务接口,但是随着时间变迁,业务的变化,或者我们协议本身的优化,都有可能要改变之前存在的接口。这时候给所有接口进行版本管理就显得很重要了,比如某个添加用户的接口,由于业务发展很大,接口的字段属性变化很大,只能重新定义一个新的接口,由 /v1/user/add 变成了 /v2/user/add,这样我们就要维护两套接口的逻辑,映射到代码里,就是要维护两个不同的业务方法。所以这篇文章主要讲的是基于SpringMVC开发的应用,怎么通过扩展开发来方便我们在代码层级管理各不同的版本接口。 SpringMVC原理概述 SpringMVC核心思想就是通过一个servlet

es6 Iterator接口和for-of

亡梦爱人 提交于 2020-04-07 06:05:47
iterator接口 简介: Iterator 接口的目的,就是为所有数据结构,提供了一种统一的访问机制,即for...of循环(详见下文)。当使用for...of循环遍历某种数据结构时,该循环会自动去寻找 Iterator 接口。 iterator接口遍历过程 创建一个指针对象,指向当前数据结构的起始位置。也就是说,遍历器对象本质上,就是一个指针对象。 第一次调用指针对象的next方法,可以将指针指向数据结构的第一个成员。 第二次调用指针对象的next方法,指针就指向数据结构的第二个成员。 不断调用指针对象的next方法,直到它指向数据结构的结束位置。 凡是具有Symbol.iterator属性的数据就具备for-of遍历的功能 Symbol.iterator本身是一个函数,该函数返回一个具有next方法的对象(简称遍历对象),next方法则是返回一个获取下一个成员的信息 遍历对象除了有next方法,还可以部署return和throw方法 return方法的使用场合是,如果for...of循环提前退出(通常是因为出错,或者有break语句),就会调用return方法。如果一个对象在完成遍历前,需要清理或释放资源,就可以部署return方法。 throw方法主要是配合 Generator 函数使用,一般的遍历器对象用不到这个方法 下面见例子 例子一: next:()=>({