示意图

值传递和引用传递的讲解

廉价感情. 提交于 2020-04-03 13:23:50
值传递:(形式参数类型是基本数据类型):方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的存储单元,所以方法执行中形式参数值的改变不影响实际参数的值。 引用传递:(形式参数类型是引用数据类型参数):也称为传地址。方法调用时,实际参数是对象(或数组),这时实际参数与形式参数指向同一个地址,在方法执行 中,对形式参数的操作实际上就是对实际参数的操作,这个结果在方法结束后被保留了下来,所以方法执行中形式参数的改变将会影响实际参数。 1·实例:值传递:传递的是值的拷贝,也就是说传递后就互不相关了。 public class TempTest { private void test1(int a){ a = 5; System.out.println("test1方法中的a="+a); } public static void main(String[] args) { TempTest t = new TempTest(); int a = 3; t.test1(a);//传递后,test1方法对变量值的改变不影响这里的a System.out.println(”main方法中的a=”+a); } } 执行结果是 test1方法中的a=5 main方法中的a=3 2:引用传递:传递的参数是按引用进行传递,其实传递的引用的地址

一张图架构示意图及简单分析

情到浓时终转凉″ 提交于 2020-03-06 03:52:00
做完一张图系统,画点架构示意图并简单分析下。 1、一张图架构示意图如下(以ARCGIS平台为例): 通过上图可以看出明显的四层:使用一张图的业务系统、一张图配置系统、第三方GIS支撑平台(本图中以ARCGIS平台为例)、图形数据 2、将以上架构示意图可以简化为: 通过以上图可以看出: (1)只要将一张图配置系统对使用一张图的业务系统提供的访问地址和访问接口(名称、参数、调用方式)固定不变(或者有一套完整的变化管理机制),一张图配置系统的升级或第三方GIS支撑平台的更换都不会影响到使用一张图的业务系统。 (2)只要一张图配置系统调用的GIS功能和性能第三方GIS支撑平台能满足,此第三方GIS支撑平台就能作为一张图备选支撑平台。 (3)如果要更换第三方GIS支撑平台,一张图配置系统调用第三方GIS支撑平台部分将有很大编码改动量(甚至重写实现逻辑)。如果能从架构上进一步将一张图配置系统中的配置部分与调用第三方GIS支撑平台部分分开,一张图配置系统对第三方GIS支撑平台依赖度将大幅减小。 (4)大多数商业图形数据存储格式(如:Arcgis SDE)都是封闭的。一旦选定某个第三方GIS支撑平台,并将数据以该平台数据存储格式存储,再想换成其他GIS支撑平台数据迁移工作将非常大。因此如果能将数据存储格式从第三方GIS支撑平台分离出来,新建一种独立格式,不受第三方GIS支撑平台影响

Python基础03-对象的内存示意图

梦想与她 提交于 2020-02-09 01:36:45
前面我们了解了对象的基本组成,对"对象"有了一定的了解后,我们再深入探讨------ 对象的内存 ################################################################################# 我们还是以昨天的例子为例: #定义一个变量,变量名为a,把2020这个值赋值给a a = 2020 #定义一个变量,变量名为b,把“之一”这个值赋值给b b = "之一" 定义两个变量,一个变量名为a,一个变量名为b。 那么a和b的作用是不是也存放在了对象的里面呢? 答案不是的。 现在给大家看下对象和变量名之间,在内存里的结构示意图。 针对对象和变量之间的关系,我们需要明白一下几点: 一、对象的内存块和变量内存块之间是独立存在的 对象在内存块中,是一直存在的。而变量不是,变量是根据用户的使用情况而定,当用户定义了一个变量时,这个编译器就会为这个变量在内存中开辟一个空间,存放该变量的相关信息。若用户不定义变量,则不存在。 二、变量实际上存放的是对象的内存地址 仔细看上图,我么不难发现, 变量a和b存放的都是两个对象的标识,即id地址 。 所以,当我们想要使用"2020"和"之一"这两个值的时候, 实际上是通过变量存放的id地址去寻找对象的值,并把值传递出来。 来源: CSDN 作者: 诸葛待墨 链接: https://blog

各种 真机远程调试 方法 汇总

情到浓时终转凉″ 提交于 2020-01-25 07:33:49
“真机远程调试”(remote inspect web on real device),是指用桌面电脑(PC或MAC)远程连接上移动设备,通过类似Chrome浏览器开发人员工具的界面,来调试移动设备上运行的网页 当前:Oct 27,2014 “真机远程调试”的方法总是在发展,日新月异,有必要在每次更新本文档时标注当前时间及当前相关软件版本 当前最新 桌面版Chrome 版本:MAC:38.0.2125.104,PC:未知 当前最新 Android上的Chrome 版本:38.0.2125.102 当前最新 Android上的UC开发人员版 版本:9.8.9.457 当前最新 iOS:8.1 总览表格 方法 关键点 实现难度(综合考虑搭环境、软件、硬件成本,分数 小 为佳) 调试效果(综合考虑仿真效果、能调试的项等,分数 大 为佳) 可用的桌面设备 可用的移动设备及可调试的浏览器 简要步骤 Chorme模拟器 非真机,只是模拟 0 2(新版本加入了模拟网络链接的功能,故上调评分) PC、MAC 无 GO weinre 安装较为繁琐 3 2 PC、MAC 全部 GO 调试Android上的Chrome 需要翻墙 2 4 PC、MAC Android上的Chrome GO 调试Android APP里的webview 需要翻墙 3 4 PC、MAC Android

微信扫物上线,全面揭秘扫一扫背后的识物技术!

孤街浪徒 提交于 2019-12-30 16:21:17
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 导语| 12月23 日,微信扫物 iOS 版本正式上线。从识别特定编码形态的图片,到精准识别自然场景中商品图片,有哪些难点需要去克服? 扫物以图片作为媒介,聚合微信内部有价值的生态内容如电商,百科,资讯进行展示, 会催生哪些新的落地场景?本文将细细道来。 作者| breezecheng,腾讯 WXG 应用研究员 编辑| sukeli、尾尾 微信长期招收计算机视觉和OCR方向的人才, 欢迎简历breezecheng@tencent.com ​一. 扫一扫识物概述 1.1 扫一扫识物是做什么的? 扫一扫识物是指以图片或者视频(商品图:鞋子/箱包/美妆/服装/家电/玩具/图书/食品/珠宝/家具/其他商品)作为输入媒介来挖掘微信内容生态中有价值的信息(电商+百科+资讯,如图 1 所示),并展示给用户。这里我们基本覆盖了微信全量优质小程序电商涵盖上亿商品 SKU,可以支持用户货比 N 家并直接下单购买,百科和资讯则是聚合了微信内的搜一搜、搜狗、百度等头部媒体,向用户展示和分享与该拍摄商品相关的资讯内容。 图1 扫一扫识物功能示意图 百闻不如一试,欢迎大家更新 iOS 新版本微信 → 扫一扫 → 识物自行体验,也欢迎大家通过识物界面中的反馈按键向我们提交体验反馈。图 2 即为扫物实拍展示。 扫一扫识物实拍展示 1.2

V模型、W模型、H模型示意图以及优缺点对比

谁都会走 提交于 2019-12-29 14:45:53
最近有朋友在 知识星球 上提问W和H模型的区别,现在就总结一下常见的三种测试模型。 V模型、W模型、H模型 测试模型的概念 随着测试过程的管理和发展,测试人员通过大量的实践,从而总结出了不少测试模型,如常见的V模型、W模型、H模型等。这些模型与开发紧密结合,对测试活动进行了抽象,成为了测试过程管理的重要参考依据。 V模型 V模型示意图: V模型各环节: 1、单元测试 又称模块测诚,针对软件设计中的最小单位—程庄模块,进行正确性检查的测试工作。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。 单元定义:C中指一个函数,Java中指一个类,在图形化的软件中,单元一般指1个窗口,1个菜单。 2、集成测试 又叫组装测试,通常在单元测试的基础上,将所有程序模块进行有序的、递增的测试。重点测试不同模块的接口部分。 3、系统测试(system testing): 指的是将整个软件系统看为一个整体进行测试,包括对功能、性能、以及软件所运行的软硬件环境进行测试。 系统测试在系统集成完毕后进行测试,前期主要测试系统的功能是否满足需求,后期主要测试系统运行的性能是否满足需求,以及系统在不同的软硬件环境中的兼容性等。 4、验收测试 α测试:Alpha是内测版本,即现在所说的C8,比版本表示该软件仅仅是一个初步完成品,通常只在软件开发者内部交流

java IO流一:IO流简介

Deadly 提交于 2019-12-10 05:14:01
IO流简单示意图: java.io.* 下面重点掌握这几个 FileInputStream FileOutputStream FileReader FileWriter BufferedReader BufferedWriter BufferedInputStream BufferedOutputStream DataInputStream DataOutputStream ObjectInputStream ObjectOutputStream InputStreamReader 转换流 OutputStreamWriter 转换流 PrintWriter PrintStream java语言中的流分为:四大家族(InputStream, OutputStream, Reader, Writer) 字节输入&输出 字符输入&输出 来源: CSDN 作者: Lank蓝柯 链接: https://blog.csdn.net/MrWanC/article/details/103464960

深入理解计算机系统

别等时光非礼了梦想. 提交于 2019-12-01 05:09:56
| 分类 计算机系统 | 计算机系统之旅 一个经典计算机系统组成示意图 计算机当中的一些重要抽象示意图 进程的虚拟地址空间示意图 程序的结构和执行(第一部分) 表示(Representing)和操作(Manipulating)信息 参考文章 : https://fmzhao.github.io/a-tutorial-on-data-representation-Integers-Floating-point-numers-and-Characters/ 程序的机器级别(Machine-Level)表示 gcc -o p p1.c p2.c 首先,C预处理器(Preprocessor)将有 #include 定义的命令(command)和宏(Macros)加载(expand)到文件当中; 然后,编译器(Complier)产生汇编语言版本的文件p1.s和p2.s; 接着,汇编器(Assembler)将汇编源码转化为二进制对象文件(object-code)p1.o和p2.o,对象代码是机器代码的一种,它包含了所有指令的二进制表示,但是不包含全局变量的地址; 最后,链接器(Liker)组合者两个对象文件以及代码实现中的库函数(library function, e.g., printf)并且生成最终的可执行文件,这是严格意义上被处理器执行的代码格式 上一篇 下一篇 Please

最全的三极管基础知识,值得一看

拜拜、爱过 提交于 2019-11-30 18:53:08
  图1-46所示是三极管示意图。三极管有3根引脚:基极(用B表示)、集电极(用C表示)和发射极(用E表示),各引脚不能相互代用。   图1-46 三极管示意图   3根引脚中,基极是控制引脚,基极电流大小控制着集电极和发射极电流的大小。在3个电极中,基极电流最小(且远小于另外两个引脚的电流),发射极电流最大,集电极电流其次。   三极管种类及外形特征   1.三极管种类   三极管是一个“大家族”,人丁众多,品种齐全。表1-4所示是三极管种类。   表1-4 三极管种类   续表   2.三极管外形特征   目前用得最多的是塑料封装三极管,其次为金属封装三极管。   关于三极管外形特征主要说明以下几点。   (1)一般三极管只有3根引脚,它们不能相互代替。这3根引脚可以按等腰三角形分布,也可以按一字形排列,各引脚的分布规律在不同封装类型的三极管中不同。   (2)三极管的体积有大有小,一般功率放大管的体积较大,且功率越大其体积越大。体积大的三极管约有手指般大小,体积小的三极管只有半个黄豆大小。   (3)一些金属封装的功率三极管只有两根引脚,它的外壳是集电极,即第三根引脚。有的金属封装高频放大管是4根引脚,第四根引脚接外壳,这一引脚不参与三极管内部工作,接电路中地线。如果是对管,即外壳内有两只独立的三极管,则有6根引脚。   (4)有些三极管外壳上需要加装散热片

6、循环神经网络(RNN)

北城以北 提交于 2019-11-26 14:04:59
6.1 为什么需要RNN? ​时间序列数据是指在不同时间点上收集到的数据,这类数据反映了某一事物、现象等随时间的变化状态或程度。一般的神经网络,在训练数据足够、算法模型优越的情况下,给定特定的x,就能得到期望y。其一般处理单个的输入,前一个输入和后一个输入完全无关,但实际应用中,某些任务需要能够更好的处理序列的信息,即前面的输入和后面的输入是有关系的。比如: ​当我们在理解一句话意思时,孤立的理解这句话的每个词不足以理解整体意思,我们通常需要处理这些词连接起来的整个序列; 当我们处理视频的时候,我们也不能只单独的去分析每一帧,而要分析这些帧连接起来的整个序列。为了解决一些这样类似的问题,能够更好的处理序列的信息,RNN就由此诞生了。 6.2 图解RNN基本结构 6.2.1 基本的单层网络结构 ​在进一步了解RNN之前,先给出最基本的单层网络结构,输入是 $x$ ,经过变换 Wx+b 和激活函数 f 得到输出 y : 6.2.2 图解经典RNN结构 ​在实际应用中,我们还会遇到很多序列形的数据,如: 自然语言处理问题。x1可以看做是第一个单词,x2可以看做是第二个单词,依次类推。 语音处理。此时,x1、x2、x3……是每帧的声音信号。 时间序列问题。例如每天的股票价格等等。 其单个序列如下图所示: 前面介绍了诸如此类的序列数据用原始的神经网络难以建模,基于此,RNN引入了隐状态$h$