首页
学习
活动
专区
圈层
工具
发布

如何理解java方法的传值和传引用的参数传递方式(基本数据类型和引用类型)

结论: 1)当使用基本数据类型作为方法的形参时,在方法体中对形参的修改不会影响到实参的数值 2)当使用引用数据类型作为方法的形参时,若在方法体中 修改形参指向的数据内容,则会对实参变量的数值产生影响,...因为形参变量和实参变量共享同一块堆区; 3)当使用引用数据类型作为方法的形参时,若在方法体中 修改形参变量的指向,此时不会对实参变量的数值产生影响,因此形参变量和实参变量分别指向不同的堆区 例一:基本数据类型作为形参...public static void main(String[] args) { Person p = new Person(); int n = 15; // n的值为...15 p.setAge(n); // 传入n的值 System.out.println(p.getAge()); // 15 n = 20; // n的值改为...this.age; } public void setAge(int age) { this.age = age; } } 例二:引用类型–修改形参指向的数据内容

2.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ajax的再次封装!(改进版) —— new与不 new 有啥区别?

    上一篇写了一下我对ajax的再次封装的方法,收到了很多有价值的回复,比如有童鞋建议用$.extend,一开始还以为要做成插件呢,后来才知道,原来这个东东还可以实现合并。省着自己再去做判断了。   ...1 //对ajax的封装 //最基础的一层封装 2 Nature.Ajax = function(ajaxInfo) { 3 4 //定义默认值 5 //type: "GET"...可以包含很多的元素(属性)。改进后完全以这个参数为主,进行默认的属性设置,最后直接把这个参数传递给原生ajax,这样调用的时候,可以根据ajax的规则来设定自己需要的属性了。   ...,哪些参数用表单post传递。...如果new的话,并发的时候肯定不会产生冲突,但是jQuery的ajax似乎没有new,那么他是如何处理并发的呢?   我是实践派,遇到问题了首先想到的是写点代码测试一下,然后再去找找原理和理论。

    1.6K60

    PHP+Ajax+Canvas

    2-表单提交 (get, post) 前端页面: action : 指定提交的地址 method : 指定提交方式 (get/post) name:指定给表单元素, 将来后台通过 name...来获取数据 enctype: 文件上传, 指定值 : multipart/form-data 后面处理表单常用的超全局变量 $_GET $_POST $_FILES $_SESSION...基于增删改查的划分方式, 了解, 现在基本只用get和post了) 前端可以向后台请求的几种方式 常用请求方式 1、 ajax发送请求 2、 表单提交发送请求 3、 a标签的href跳转发送请求 资源型请求...=new FormData(); 3- 通过ajax把数据发送给后台 4- 后台获取数据,存到数据库中 5- 添加完成,重新渲染页面 (渲染使用模板引擎) 2- 删除数据思路: 1- 获取对应数据id...2- 通过ajax把id传给后台 3- 后台根据id进行删除 4- 删除成功后,重新渲染当前页 3- 更新数据思路: 1- 获取对应数据id 2- 通过ajax把id传给后台 3- 后台根据id返回对应的数据

    4.2K30

    谨慎使用全局变量

    其中接口3的请求参数依赖接口1和接口2的响应参数,接口1和接口2的返回数据会展示到前端,然后调用接口3时将从接口1和接口2的返回参数中拿数据传递给接口3,然后将接口3返回的数据展示,到此页面初始化加载完成...经过排查分析发现是前端接口调用顺序问题,具体点就是调用接口3时,没有拿到需要的数据(接口3的逻辑大致是通过前端传的参数1和参数2取接口1和接口2放在缓存的数据,缓存的Key和类型有关) 从表象上看就是在调用接口...通过排查前端代码,发现一个问题,前端设置了一个全局变量来记录当期的业务类型(如A类型、B类型),调用接口1,2,3传递业务类型时就是传递的这个全局变量。...看到这也许你就能想明白为什么说谨慎使用全局变量了,这个问题正是因为全局变量的使用不当导致的。 原因分析 我们来一起分析下到底是如何导致的吧。...3拿到的业务类型就由预期的A变成了B,而在此之前接口1,2都是按A类型传递的参数,故后台存储的数据是A类型的,但此时因为全局变量的变化,接口3传递的业务类型就又A变为B,故在接口3的业务逻辑里,按业务类型

    1.4K30

    ASP.Net开发基础温故知新学习笔记

    一、一般处理程序基础   (1)表单提交注意点:     ①GET通过URL,POST通过报文体;     ②需在HTML中为表单元素设置name;     ③元素id是给Dom用的,name才是提交给服务器用的...①浏览器发出访问请求→②服务器处理访问请求并返回HTML→③浏览器解析HTML并显示页面   (3)GET与POST的区别:(★★★→重点)     ①GET通过URL传值,而POST通过HTTP报文;...    ②GET传递的数据量有限,POST则没有限制;     ③POST方式无法通过URL在其他用户中还原;     ④GET方式URL传特殊字符需要事先进行编码;   (4)HTTP协议基本理解:...④与Cookie的关系:Session在创建时会依赖于Cookie,实质是Cookie存储一个SessionID作为每次提交服务器请求访问的Key,Session通过这个Key找到具体的Value值;...=异步的JavaScript和XML,一种进行页面局部刷新的技术;      ②AJAX通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新,从而改善用户体验效果;   (3)AJAX基本流程

    3K10

    关于PHP安全编程的一些建议

    但是,没有理由让你因为对你的代码的不确定性而导致不一致的安全策略。当你在服务器上放任何涉及到钱的东西时,就有可能会有人尝试破解它。...在 PHP 脚本中,总是要验证 传递给任何 PHP 脚本的数据。在本文中,我们向你演示了如何分析和防范跨站脚本(XSS)攻击,它可能会劫持用户凭据(甚至更严重)。...一个启用了全局变量的服务器会自动为全局变量赋任何形式的参数。为了了解它如何工作以及为什么有危险,让我们来看一个例子。 假设你有一个称为 process.php 的脚本,它会向你的数据库插入表单数据。...看下面的脚本,假如 $authorized 变量的值为 true,它会给用户显示通过验证的数据。...所有通过 post 表单传递到你 web 页面的数据都会自动保存到一个称为 $_POST 的大数组中,所有的 GET 数据都保存在 $_GET 大数组中。

    89950

    关于Json 与 Request Header 的Content-Type 一些关系。

    例如最常见的就是text/html,它的意思是说返回的内容是文本类型,这个文本又是HTML格式的。原则上浏览器会根据Content-Type来决定如何显示返回的消息体内容。...enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。 默认地,表单数据会编码为 “application/x-www-form-urlencoded”。...enctype值和意义: enctype值 意义 application/x-www-form-urlencoded 在发送前编码所有字符(默认) multipart/form-data 不对字符编码。...在使用包含文件上传控件的表单时,必须使用该值。 text/plain 空格转换为 “+” 加号,但不对特殊字符编码。 HTTP请求中, get请求,参数url:http://test/ttt?...知道了什么是Request Payload,那服务端是如何接收并解析出我们通过Request Payload所传递的特殊格式的数据呢(比如表单键值对参数或复杂的json对象)?

    1.8K10

    PHP的文件上传操作

    上图为上传文件后 核心知识 - 文件上传操作的基本步骤 1、构建基本的表单,并针对表单进行相关处理 2、在“上传文件”数据发生变化的时候,使用AJAX发送请求 3、PHP获得到文件的基本信息 4、PHP...最基本的数据库和最基本的文件夹结构还是要有的。 此处基本的文件夹结构如下图: ? 数据库相关准备如下图: ?...){ // 当值发生变化,且不为空的时候,通过AJAX提交表单 if($.trim($(this).val()) !...之后的数据库连接我就不再讲解了,如果还不是太清楚,可以查看《PHP对数据库的相关操作》 在PHP当中,通过$_FILES这个超全局变量进行文件相关信息的获取,使用$_FILES["file"]["name...,通过AJAX提交表单 if($.trim($(this).val()) !

    6.2K50

    如何在 Spring MVC 中处理 AJAX 请求:从表单数据到文件上传的全流程

    如何在 Spring MVC 中处理 AJAX 请求:从表单数据到文件上传的全流程 在现代 web 开发中,AJAX(Asynchronous JavaScript and XML)被广泛用于创建响应式和动态的用户界面...本篇博客将深入探讨如何在 Spring MVC 中处理 AJAX 请求,特别是如何接收和处理包含文件上传和表单数据(如单选框)的复杂请求。...2.2 发送 AJAX 请求 在前端,我们使用 jQuery 来发送 AJAX 请求,并将表单数据通过 FormData 传递到服务器。...总结 在本文中,我们详细讨论了如何通过 AJAX 提交包含文件上传和附加表单数据的请求,并在 Spring MVC 后端进行处理。...可以在 AJAX 请求成功后,更新页面显示上传结果或处理进度条等动态效果。 通过理解整个流程的实现,你将能够在实际项目中灵活应对各种文件上传和表单数据处理的场景。

    18810

    前端 50 道面试题与答案邀你轻松拿到Offer

    十三、Ajax 是什么?Ajax 的交互模型?同步和异步的区别?如何解决跨域问题? Ajax 是什么 1. 通过异步模式,提升了用户体验 2....简单来说就是一种发布和接收 HTML 页面的方法,被用于在 Web 浏览器和网站服务器之间传递信息。...2. get 是把参数数据队列加到提交表单的 ACTION 属性所指的 URL 中,值和表单内各个字段一一对应,在 URL 中可以看到。...在 JavaScript 中 scope 是指作用域,每个函数都有自己的作用域。作用域基本上是变量以及如何通过名称访问这些变量的规则的集合。 只有函数中的代码才能访问函数作用域内的变量。...如果你错误地创建了全局变量,它会通过抛出错误的方式来警告你。

    2K20

    30分钟全面解析-图解AJAX原理

    3.服务端返回Response后,浏览器需要加载整个页面,对浏览器的负担也是很大的。 4.浏览器提交表单后,发送的数据量大,造成网络的性能问题。 问题: 1.如何改进? 2.AJAX是什么?...一、什么是 AJAX  1.为什么需要AJAX 当需要从服务器获取数据,并刷新页面的操作,如果不采用AJAX,则需要用提交整个表单的方式,当提交表单时,发送请求给服务器,页面需要等待服务器发送完response...2.AJAX的概念: 1.AJAX = 异步 JavaScript 和 XML。 2.AJAX 是一种用于创建快速动态网页的技术。 3.通过在后台与服务器进行少量数据交换,可以使网页实现异步更新。...中,POST方式可以添加键值对,也可以不添加 2.GET方式中,send方法传递值无效。...,但需要客户允许JavaScript在浏览器上执行 5.浏览器的内容和服务端代码进行分离。

    4.3K121

    php基本语法复习

    对象 对象是存储数据和有关如何处理数据的信息的数据类型 php中必须明确地声明对象 首先必须声明对象的类,使用class关键词,类是包含属性和方法的结构 在对象类中定义数据类型,然后在该类的实例中使用此数据类型...用于收集HTML表单提交的数据 下面是一个包含输入字段和提交按钮的表单,当用户通过点击提交按钮来提交表单数据时,表单将发送到标签的 action 属性中指定的脚本文件....参数传递到当前脚本的变量数组 $_POST是通过HTTP POST传递到当前脚本的变量数组 何时使用 GET 方法从表单发送的信息对任何人都是可见的(所有变量名和值都显示在 URL 中)。...来自表单的输入数据 Cookies 服务器变量 数据库查询结果 函数和过滤器 如果需要过滤变量,使用以下的过滤器函数之一 filter_var() 通过一个指定的过滤器来过滤单一的变量 filter_var_array...>"> 当提交此表单时,通过method=’post’发送表单数据 $_SERVER[“PHP_SELF”] $_SERVER[“PHP_SELF”]是一种超全局变量,它返回当前执行脚本的文件名 因此,

    2.2K10

    Web Security 之 DOM-based vulnerabilities

    DOM-based vulnerabilities 在本节中,我们将描述什么是 DOM ,解释对 DOM 数据的不安全处理是如何引入漏洞的,并建议如何在您的网站上防止基于 DOM 的漏洞。...网站可以使用 JavaScript 来操作 DOM 的节点和对象,以及它们的属性。DOM 操作本身不是问题,事实上,它也是现代网站中不可或缺的一部分。...当网站包含的 JavaScript 接受攻击者可控制的值(称为 source 源)并将其传递给一个危险函数(称为 sink 接收器)时,就会出现基于 DOM 的漏洞。...从根本上讲,当网站将数据从 source 源传递到 sink 接收器,且接收器随后在客户端会话的上下文中以不安全的方式处理数据时,基于 DOM 的漏洞就会出现。...如何防御 DOM-clobbering 攻击 简而言之,你可以通过检查以确保对象或函数符合你的预期,来防御 DOM-clobbering 攻击。

    2.1K10

    Ajax全接触-imooc

    异步——填写表单时,页面当时就把数据发送到服务器(发送请求),服务器处理响应,把结果发给页面,过程中不不要重新加载页面,填写的错误会实时显示,不会有任何的等待 XMLHttpRequest对象——可以用于后台和服务器交换数据...,表单信息等; GET:信息获取,使用URL传递参数,用来查询,不会影响数据本身,一般不用GET新建和修改操作,发送的信息对任何人都是可见的,所有的变量名和值都显示在URL当中,发送信息的数量限制在2000...function search(){ //检查是否有员工编号的参数 //isset检测变量是否设置;empty判断值为否为空 //超全局变量 $_GET 和 $_POST 用于收集表单数据...处理跨域的方法: 1、代理proxy:通过在同域名的web服务器端创建一个代理,比如在北京的web服务器的后台来调用上海服务器的服务,然后再把响应结果返回给前端,这样前端在调用北京同域名的服务就和调用上海的服务效果相同了...,返回的JSON作为参数传入回调函数中,通过回调函数操作数据。

    6.8K20

    前端架构师之01_JavaScript_Ajax

    请求头 请求头的作用:请求头位于请求行之后,主要用于向服务器传递附加消息。 请求头的组成:都是由头字段名称和对应的值构成,中间用冒号“:”和空格分隔。...在动态网站中,许多功能是由前后端交互实现的。例如,用户注册和登录、发表评论、查询积分、余额等。 这些操作可分为两类,一类是向服务器提交数据(表单交互),一类是向服务器查询数据( URL参数交互)。...需要注意的是,服务器在返回XML时应设置响应头Content-Type的值为text/xml或application/xml,否则会解析失败。 Ajax如何处理服务器返回的信息。...Cookie是根据域名、路径等参数存储的,不同网站的Cookie相互隔离,从而保证数据的安全性。 6.2 FormData Ajax向服务器发送数据时,如何收集表单中的数据?...以前的方法:通过DOM操作手动获取用户在表单中填写的值。 缺点:表单中的数据非常多时,使用此方式将会给开发和维护带来许多麻烦。 HTML5提供的方法:FormData表单数据对象。

    1.2K10

    $_POST

    $_POST $_GET $_ENV $_SERVER $GLOBALS $_FILES $_SESSION $_REQUEST $_POST _POST是一种用来向脚本传递表单数据的机制,_POST..._POST超级全局变量直接绑定到HTML表单使用的表单提交方法,如果方法设置为post,那么所有表单数据都会打包到_POST超级全局变量中,可以根据需要从中抽取和使用各部分数据。...$_POST是如何工作的?怎样存储表单中的这些数据?..._POST是一个数组,特殊的PHP存储容器,它将一个变量集合存储在同一个名下,有人提交表单时,键入到表单域中的数据就存储在_POST数组中,这个数组的任务就是把这些数据传送到脚本。...array_fill_keys — 使用指定的键和值填充数组 array_fill — 用给定的值填充数组 array_filter — 用回调函数过滤数组中的单元 array_flip — 交换数组中的键和值

    4.4K40

    Web基础知识

    请求头 请求头的作用:请求头位于请求行之后,主要用于向服务器传递附加消息。 请求头的组成:都是由头字段名称和对应的值构成,中间用冒号“:”和空格分隔。...在动态网站中,许多功能是由前后端交互实现的。例如,用户注册和登录、发表评论、查询积分、余额等。 这些操作可分为两类,一类是向服务器提交数据(表单交互),一类是向服务器查询数据( URL参数交互)。...需要注意的是,服务器在返回XML时应设置响应头Content-Type的值为text/xml或application/xml,否则会解析失败。 Ajax如何处理服务器返回的信息。...Cookie是根据域名、路径等参数存储的,不同网站的Cookie相互隔离,从而保证数据的安全性。 6.2 FormData Ajax向服务器发送数据时,如何收集表单中的数据?...以前的方法:通过DOM操作手动获取用户在表单中填写的值。 缺点:表单中的数据非常多时,使用此方式将会给开发和维护带来许多麻烦。 HTML5提供的方法:FormData表单数据对象。

    1.9K10

    关于ajax学习笔记

    在 Ajax应用中信息是通过XML数据或者字符串在浏览器和服务器之间传递的(json字符串居多) 在浏览器端通过XMLHttpRequest对象的responseXMl属性,得到服务器端响应的XML数据...并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。 基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。...AJAX应用和传统Web应用有什么不同? 传统的web前端与后端的交互中,浏览器直接访问Tomcat的Servlet来获取数据。Servlet通过转发把数据发送给浏览器。...).height(); 获取,视口底部来触发ajax 获取下一页的数据 总文档高度-已经卷动高度-视口高度 上就是滚动到底了,滚动到文档底部就停止 ajax 请求。...(ajax异步),所以用之前的数组进行管理,每次都对最小值的高度插入值,这样就能保证每次都往最靠里面的图片位置进行放置 并且需要使用绝对位置值,因为css里面,需要使用绝对值撑开位置(left 和top

    2.2K20

    再谈沙箱:前端所涉及的沙箱细讲

    更严重的是,它切断了JavaScript与Web服务器上所有内容的联系,例如存储用户列表和产品目录的数据库以及运行业务逻辑的服务器端代码。...你不能够在模板表达式中试图访问用户定义的全局变量。...这也会带来一些限制:script脚本不能执行不能发送ajax请求不能使用本地存储,即localStorage,cookie等不能创建新的弹窗和window不能发送表单不能加载额外插件比如flash等我们可以配置...然后我们利用 postMessage API,将你需要执行的代码,和需要暴露的数据传递过去,然后和你的iframe页面通信就行了通过postMessageAPI传递的对象,已经由浏览器处理过了,原型链已经被切断...当你调用postMessageAPI传递数据给子页面的时候,传输的数据对象本身已经通过结构化克隆算法复制借助立即执行函数或闭包函数// jQuery当中的沙箱模式(function (win) {//

    2.3K10
    领券