《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 = ...
随机推荐
- php反序列化漏洞复现
超适合小白的php反序列化漏洞复现 写在前头的话 在OWASP TOP10中,反序列化已经榜上有名,但是究竟什么是反序列化,我觉得应该进下心来好好思考下.我觉得学习的时候,所有的问题都应该问3个问题: ...
- C#初始类和命名空间
本节内容: 1.剖析Hello,World程序 1.1初始类(class)与名称空间(namespace) 2.类库的引用 2.1DLL的引用(黑盒引用) 2.2项目引用(白盒引用) 2.3建立自己的 ...
- ESP8266开发之旅 进阶篇⑥ ESP-specific APIs说明
1.前言 在介绍Arduino Core For ESP8266的时候,博主着重讲解了WIFI库的使用,但是并没有涉及到ESP8266硬件本身的一些特有API.所以,这一章我们将讲解ESP82 ...
- day04整理
目录 内容回顾 变量 什么是变量 变量的组成 变量名的命名规范 注释 单行注释 多行注释 turtle库的使用 一.数据类型基础 一.数字类型 (一)整形 (二)浮点型 二.字符串类型 (一)作用:姓 ...
- APP打包设置程序版本号
正确设置方式是: 注意,以下修改不会起作用<manifestxmlns:android="http://schemas.android.com/apk/res/android" ...
- Android dos操作
adb shell 开Androidls 列表cd +目录名 打开目 ...
- Computer English Notes
Chapter 1 : About Computer Answer the following - Abbreviation LBS - Location-Based Services HTML - ...
- 视口viewport与单位rem的本质
结论: 视口viewport的设置是为了让字的显示在不同的屏幕下保持一致. 单位rem的使用是为了让页面中的布局元素的比例在不同的屏幕下显示的比例保持一致. 现象: 我们看电脑时候的网页的时候的字体大 ...
- Mysql数据一般问题
数据插入中文全部变为???问题: 1.停止Mysql服务: 2.修改C:\Program Files (x86)\MySQL\MySQL Server 5.5\My.ini default-chara ...
- [考试反思]0929csp-s模拟测试55:消逝
菜得过分. 面对T1的大板子不知所措,然后T2的贪心不小心把排序语句删了... T1这种大模板啊...其实我是觉得我能打出来的,然后先用一个小时码了一个2k. 然后做T2想贪心就出来了.十分钟码完T3 ...