《JAVA 程序员面试宝典(第四版)》之传递与引用篇
废话开场白
这个周末突然很想创业,为什么呢?原因很简单,我周围的同学或者说玩的比较好的朋友都发达了,前一个月和一个两年前还睡在一张床上的朋友,他现在已经在深圳买房买车了,没错是在深圳买的房。也是前一阵子一个很久不见的大学同学请吃饭,席间都是谈论天使轮、A轮之类的话题,老家高中同学很多至少也买车了吧。我呢?依然原地踏步,于是乎我决定创业了,创业的理由就是这么简单。问题来了,我什么都没有,创业又应该从哪里入手呢?我想既然现在O2O这么火,我是不是先搞一个手机APP呢?于是乎我百度了一下,应该如何快速搞一个手机APP,百度经验告诉我用APICloud,进到他们官网去看了一下,真是让人眼前一亮,各种视频教程、文档应有尽有。后来不知道为什么我又退出APICloud官网,回到搜索APIClound百度首页,无意中竟然发现在APICloud官网下面看到“DCloud发布声明,称正式起诉APICloud产品侵权“ 的标题,于是又点击进去看了一下,尼玛竟然在APICloud产品下面发现DCloud公司产品的数字证书,虽然我不知道数字证书是个什么鬼,我只知道剽窃也是一个很有技术含量的活。说了这么多和我的创业有什么关系?对不起没有关系。在这里我只想说现在软件创业都普遍偏浮躁,动不动就这个云那个云,”这个软件系统使用了大数据“,”目前公司估值5个亿"!天使轮500W,A轮多少多少等等之类的,但实际上说这些话的人有些时候我感觉真的是在吹牛逼(不包括那些真正有实力的公司),一个连接网络的程序就叫云了,一份普通的报表就叫BI或者是大数据分析了,一个只有几个员工的软件公司连测试人员都没有就敢估值5个亿。 唉!!!!!!
正文
说到传递与引用,很多人会说基本类型变量就是传值,对象型变量就是传引用,首先这里什么是传值什么是传引用?很简单当一个参数是基本数据类型的话,是不会改变本身变量的值,如果参数是对象类型则会改变本身变量的值。在没有理解这个之前,我想通过函数调用方式来改变List某个下标的值是像下面这么来写的:

当理解了传引用与传值这个概念后,完全就没有必要这么来写了,主要是 上面第42行 lstStudent.set(1, stu3); 这段代码,由于Student是一个是对象,当做一个参数来传递的话,其实传递是引用,即使不使用lstStudent.set(1, stu3);列表的值也会改变。那是不是所有对象当做参数来传递的时候,都是传递的是引用呢?额,这个不好回答,我只是知道并不是所有对象当做参数来传递后值都会改变,也并不是说所有基本类型当做参数值来传递的时候里面的值都不会改变。请看下面的代码:

总之,大体上按照对象来当做参数来传递都是会改变里面的值(基本数据对象类型除外),基本数据类型当做参数来传递都不会改变原来变量的值(基本类型的数组参数除外)。
《JAVA 程序员面试宝典(第四版)》之传递与引用篇的更多相关文章
- 【Java】Java程序员面试宝典(第三版)第5章----Java程序设计基本概念
1.static静态变量,在次级作用域也可以被修改. 2.k++ + k++.第一个自加实际上只有在与计算+k++时补增.详情P36的题目. 3.Java数据类型从低到高分为(byte short c ...
- 《JAVA 程序员面试宝典(第四版)》读书笔记之前言
工作五年了一直在小的软件公司混,总感觉自己的专业知识没有太大的提升.当然了中间也换了一两家公司,面试的公司就很多家,总感觉正规的软件公司(无论大小)对于基础知识的考核都非常重视,而不管你说你之前服务过 ...
- JAVA程序员面试宝典
程序员面试之葵花宝典 面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题 ...
- Java程序员面试宝典1 ---Java基础部分(该博文为原创,转载请注明出处)
(该博文为原创,转载请注明出处 http://www.cnblogs.com/luyijoy/ by白手伊凡) 1. 基本概念 1) Java为解释性语言,运行过程:程序源 ...
- [Java程序员面试宝典]读书笔记
ClassLoader具备层次关系,且不止一种.不同的类装载器分布创建的同一个类的字节码数据属于完全不同的对象,没有任何关联 通过Class.forName(String className),能够动 ...
- 《JAVA 程序员面试宝典(第四版)》之循环、条件、概率
分享内容:关于集合的使用 书页号码:77页 题目:一个字符串中包含a~z中的多个字符,如有重复,如String data = "aavzcadfdsfsdhshgwasdfasd ...
- 《JAVA 程序员面试宝典(第四版)》之JAVA程序设计基础概念(1)类型转换
问题主题:类型转换 书页号码:37页 题目: 讨论点:答案不是D,应该是B 理由:看下面在编译器输入的结果 知识扩展:装箱与拆箱, == 与 equals 区别 之前也老是听说什么装箱.拆箱之 ...
- java程序员面试宝典之——Java 基础部分(1~10)
基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java"源文件中是否可以包 ...
- Java程序员面试宝典——重要习题整理
1.下面程序的输出结果是() public class Test { public static void main(String[] args) { int j = 0 ; for(int i = ...
随机推荐
- opencv::模板匹配(Template Match)
模板匹配介绍 模板匹配就是在整个图像区域发现与给定子图像匹配的小块区域. 所以模板匹配首先需要一个模板图像T(给定的子图像) 另外需要一个待检测的图像-源图像S 工作方法,在带检测图像上,从左到右,从 ...
- Vuex的简单应用
### 源码地址 https://github.com/moor-mupan/mine-summary/tree/master/前端知识库/Vuex_demo/demo 1. 什么是Vuex? Vue ...
- linux上安装newman
1. newman的安装依赖nodejs,首先安装node/npm 进入到 /usr/local目录[root@ipha-dev71- local]# cd /usr/local [root@ipha ...
- Jenkins指定tag发布到k8s环境
Jenkins指定tag发布到k8s环境 1.Jenkins配置一个Pipeline 工程 首先要安装插件:https://www.cnblogs.com/Dev0ps/p/9125232.html ...
- 热烈祝贺达孚电子(NDF)网站上线
尊敬的客户: 您们好! 为适应公司发展的需要,树立公司的良好形象,满足大家更多的了解电容器系列产品及公司的服务,经过1个多月的筹备,在2019年10月21日公司网站正式上线啦,这标志着NDF(达孚电子 ...
- Shiro learning - 入门案例(2)
Shiro小案例 在上篇Shiro入门学习中说到了Shiro可以完成认证,授权等流程.在学习认证流程之前,我们应该先入门一个Shiro小案例. 创建一个java maven项目 <?xml ve ...
- Springboot 系列(十五)如何编写自己的 Springboot starter
1. 前言 Springboot 中的自动配置确实方便,减少了我们开发上的复杂性,那么自动配置原理是什么呢?之前我也写过了一篇文章进行了分析. Springboot 系列(三)Spring Boot ...
- MyEclipse 2013配置JDBC连接mySQL||Tomcat 7.0 8.0 配置 JDBC |配置mysql-connector-java-5.1.16
MyEclipse->Preferences->MyEclipse->Severs->Intergated Sandbox->Myeclipse Tomcat 7(或者T ...
- 在.NET Core 3.0中发布单个EXE文件
假设我有一个简单的“ Hello World”控制台应用程序,我想发送给朋友来运行.朋友没有安装.NET Core,所以我知道我需要为他构建一个独立的应用程序.很简单,我只需在项目目录中运行以下命令: ...
- Scrapy 框架入门简介
一.Scrapy框架简介 Scrapy 是用 Python 实现的一个为了爬取网站数据.提取结构性数据而编写的应用框架. Scrapy 常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中. ...