`
潇湘叶语
  • 浏览: 4697 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

java入门总结——参数传递

阅读更多

 

 

    在说参数传递之前,先说一下栈和堆。其实我对它们也不是很了解-_-|||,不过我们可以去问度娘,所以我这里简单说一下,栈相当于缓存,堆相当于内存。

 

Java中参数传递包括两种,一种是值传递,一种是引用传递。

 

先说值传递。

 

八种数据类型(byte short int long float double char Boolean)和 String 类储存于栈中,即在栈中直接开辟出相应数据类型大小的空间,存储下这个值。当一个值传给这个值时,就该为传入的值,例如:

 

int n//定义整型n,此时n被默认为0

 

n = 10//10传给n,在栈中被储存的数据n值被改变,此时为10

 

再如:

 

int n

 

int m = 10

 

n = m//m中存储的数据传给nn此时为10

 

从上面两个例子,我们发现参数传递就是传递原始参数的值。nm之间互不干扰,这很容易理解,nnmm,其中哪一个改变也不会影响另一个。

 

 

 

引用传递

 

Java中引用传递只适用于对象类型和数组。

 

实际上在实例化对象的时候,new关键字在堆中开辟了与该类对应的空间,而对象名在栈中,此时对象名储存的不是对象中的属性和方法,而是对象在堆中的地址。

 

假设我们已经通过同一个类创建好对象obj1 obj2,

 

obj1 = obj2

 

这时,obj2 传给obj1 的就是obj2 所储存的地址,也就是说obj1 此时储存的是obj2 的地址,这时候通过obj1 来调用方法和属性,都是obj2 的方法和属性。这时候obj2 就相当于两个对象名,而obj1 对象此时没有地址指向它。

 

对于数组也是如此。

 

分享到:
评论

相关推荐

    JAVA入门到精通——30天学通JAVA

    《JAVA入门到精通——30天学通JAVA》是一本专为初学者设计的Java编程教程,旨在帮助读者在短短的30天内快速掌握Java编程基础,从而踏入编程世界的大门。Java作为一种广泛应用于互联网、移动应用、企业级开发等领域的...

    Java语言程序设计教程(Java 7)——入门与提高篇01

    在Java语言程序设计的入门部分,先介绍了Java语言的基本概念和特性。Java具备跨平台执行能力,即一次编写,到处运行(WORA)的特性。它通过Java虚拟机(JVM)来实现在不同操作系统上的运行。Java程序通常需要编写源...

    Java语言程序设计教程(Java 7)——入门与提高篇03

    面向对象编程是Java语言的核心概念之一,Java 7版本的教程为读者提供了一个系统的学习路径。本章重点介绍面向对象编程的基本概念,包括类的定义、对象的创建以及对象之间的关系。同时,本章还涵盖了Java中基本数据...

    Android新手入门1——项目源码

    本篇文章将深入解析“Android新手入门1——项目源码”所涵盖的知识点,包括Android项目的创建、活动(Activity)的创建与管理、按钮的使用、页面跳转、页面间的消息传递以及Menu菜单的前端实现。 首先,Android项目...

    Java_Web快速入门——全十讲

    以上是对“Java_Web快速入门——全十讲”的部分知识点进行了详细的总结,这些知识点涵盖了 Java Web 技术的基础概念、核心技术和实践应用,对于初学者来说是非常宝贵的参考资料。接下来的几讲会继续深入探讨更高级的...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让知识环环相扣,降低了学习的难度 通过大量的比喻、类比、对比和图示等多种讲解方式,学习效果好 对Java语言的每个语法都提供了一个或多个例程讲解 ...

    java中参数传递方式详解

    Java 中参数传递方式详解是 Java 新手入门面临的一个经典的话题。本文意在终结这个话题,Java 中有说法:Java 里面参数传递都是按值传递,怎么理解这句话? 按值传递和按引用传递是来自 C++ 语言的概念。引用不是...

    java课程设计实例——java源代码

    7. **方法**:函数的定义与调用,参数传递,方法重载和重写。 8. **异常处理**:理解异常的产生,学习try-catch语句块,以及finally块的使用。 9. **IO流**:学习输入输出流,包括文件操作,字符流与字节流,以及...

    android系统入门了解——main.rar

    2. **控件**:TextView、EditText、Button、ImageView等是常见的UI元素,通过XML或Java代码进行定义和操作。 3. **主题和样式**:通过styles.xml文件设置全局主题和控件样式,提高界面一致性。 四、程序调试 1. **...

    Java入门123(第二版)PPT.rar

    "Java入门123(第二版)PPT.rar" 提供了一套完整的Java初学者教程,通过一系列PPT课件来帮助学习者掌握Java的基础知识。下面我们将深入探讨其中涉及的重要知识点。 1. **第一章:让自己的第一个Java程序跑起来!** ...

    Java语言程序设计——基础篇

    综上所述,“Java语言程序设计——基础篇”这本书全面地介绍了Java语言的基础知识,适合Java初学者作为入门指南。通过系统学习这些知识点,读者可以掌握Java编程的基本技能,并为进一步深入学习打下坚实的基础。

    JAVA入门教程

    ### JAVA入门教程核心知识点解析 #### 一、Java语言概览 Java自1995年由Sun Microsystems公司推出以来,迅速成为了全球范围内最受欢迎的编程语言之一。作为一种纯面向对象的编程语言,Java不仅具备强大的功能,还...

    Java实战入门[一个资深Java培训老师倾力收藏].pdf

    本书《Java实战入门[一个资深Java培训老师倾力收藏]》为Java初学者提供了一条从零基础到实战开发的学习路径,涵盖了Java编程语言的多个重要方面。全书共分为二十一章,每章都围绕着具体的知识点和项目实践进行讲解,...

    经典Java趣味入门

    ### 经典Java趣味入门——Java基础与应用实践 #### 一、Java源文件与基本概念 本章节从创建Java源文件入手,介绍了Java源文件的基本结构及其组成元素,为初学者提供了Java语言的基础概念。 ##### 2.1 创建Java...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让知识环环相扣,降低了学习的难度 通过大量的比喻、类比、对比和图示等多种讲解方式,学习效果好 对Java语言的每个语法都提供了一个或多个例程讲解 ...

    入门学习struts——合同管理系统

    在"入门学习struts——合同管理系统"中,你将有机会深入理解Struts1的核心概念和工作原理,同时通过一个实际的合同管理系统的开发过程,提升你的Java Web开发技能。 该系统可能包含了以下组件和知识点: 1. **...

    Android编程快速入门——字节跳动.zip

    本资料“Android编程快速入门——字节跳动”旨在帮助新手理解Android开发的基础概念,并提供实际操作的指导。 一、Android简介 Android是由Google领导的开放源代码操作系统,广泛应用于智能手机和平板电脑。它基于...

    初学Java傻瓜版-第2版

    6. **函数**:学习函数的定义、参数传递和返回值,以及如何使用内置函数和自定义函数。 7. **面向对象编程**:深入理解类、对象、封装、继承和多态等核心概念,这是Java的重要特性。 8. **异常处理**:学习如何...

Global site tag (gtag.js) - Google Analytics