1、JAVA中的数据类型有两大类
一是基本数据类型:
a. byte 字节型 1字节 8位 取值范围(-128~127)
b. short 短整型 2字节 16位 (-2^15~2^15-1)
c. int 整型 4字节 32位 (-2^31~2^31-1)
d. long 长整型 8字节 64位 (-2^63~2^63-1)
e. float 单精度 4字节 32位 (-2^31~2^31-1)(科学计数法)
f. double 双精度 8字节 64位 (-2^63~2^63-1)(科学计数法)
g. char 字符型 2字节 16位 (0~2^16-1)
h. bool 布尔型 true和false
内存分配:变量名和值一般存在栈中,例如 int i=10; i 和 10 都存在栈空间中。
二是引用类型(类类型):
通过类创建的对象的变量名,所有用class,interface,abstract class定义的类和接口以及数组都属于该类型。
内存分配:在堆中创建新的空间,存储该类的属性及方法,栈中的变量名存储该内存空间的首地址,例如 Student a =new Student(); a存在栈中,a中的内容为在堆中新开辟的内存空间的首地址,该内存空间存储Student类的属性和方法。
2、值传递
值传递适用于基本数据类型和String类。不改变变量的地址,只传值。比如 张三的一份作业,借给别人参考,别人抄完后并自己修改了一点,这时另一个人再借张三的作业,仍然是那份作业并没有改动。
代码实例:
public class Test {
public static void main(String [] args){
//实例化一个对象
Test t=new Test();
int i=10;
//调用方法,在方法中改变i值
t.change(i);
System.out.print("i:"+i);
}
public void change(int i){
i=20;
}
}
运行结果:
3、引用传递
引用传递适用于引用类型,String类除外。引用传递的传递方式:传地址,改变变量的地址。比如 张三的作业交给老师批改,老师直接在上面写上批语,张三再拿回作业时已经是被批注过的作业了。
代码实例:
public class Student {
private String name;
//设置学生姓名的方法
public void setName(String name){
this.name =name;
}
//获取姓名的方法
public String getName(){
return name;
}
}
public class Manager {
public static void main (String[] args){
//实例化学生对象
Student stu1=new Student();
Student stu2=new Student();
//设置第一个学生姓名
stu1.setName("李玉");
//将第一次创建的学生类的首地址传给stu2
stu2=stu1;
//设置姓名
stu2.setName("王林");
System.out.print("stu1:"+stu1.getName());
}
}
运行结果:
4、参数传递的方法:构造方法和普通方法
构造方法传参,是在创建对象时传入参数,对对象进行初始化;
普通方法传参,是在通过一般方法传入参数,两种方法无本质区别,均是传入参数。
- 大小: 29.4 KB
- 大小: 23.5 KB
分享到:
相关推荐
参数传递 单个参数传递 多个参数传递 传入单个实体(JavaBean/Map) 传入多个实体 传入集合 使用场景 在实际开发过程中,我们往往需要编写复杂的SQL语句,拼接稍有不注意就会导致错误,Mybatis给开发者提供了动态SQL,...
将参数传递给水晶报表
网页间参数传递例子网页间参数传递例子网页间参数传递例子网页间参数传递例子网页间参数传递例子
此文档为总结的Matlab GUI设计中,不同控件及不同GUI界面间的参数传递方法,希望对下载者有帮助。
kettle定时加载数据,并且实现多参数传递,高效处理复杂业务逻辑
c# 调用C++编写 的DLL函数各种参数传递问题。数据处理问题等等。
使用一般参数传递方式,实现简单计算器的加减乘除后端接口功能。 Http://localhost:8080/simplecalculator
用图片的和代码的方式解释指针参数传递内存
JNI 各种参数传递,基本数据类型,自定义对象,系统对象
一个简单的matlab GUI控件之间的参数传递实例,适用于数组、字符串等变量的参数传递,程序简单明了,可直接套用,适用于GUI初学者。
12.参数传递之值传递.zip12.参数传递之值传递.zip12.参数传递之值传递.zip12.参数传递之值传递.zip12.参数传递之值传递.zip12.参数传递之值传递.zip12.参数传递之值传递.zip12.参数传递之值传递.zip12.参数传递之值...
C++ 与C#之间的指针参数传递,实现无限量数据的传递,轻松无压力,方便在C++里面获取或者从C#传递数据到C++的动态库调用内。
本文档针对于Qt C++代码,包括窗体新建、窗体之间的参数传递等
13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递.zip13.java参数传递之引用传递....
VB过程中使用的参数分为实参和形参,简单的讲,在过程定义中给定的参数是形参,而在过程调用语句中给定的参数是实参。...对参数传递方式的正确判别是过程学习中的一个难点,也是等级考试中的一个考点
C#中两个窗体之间的参数传递,在一个窗体的文本框中输入数据,按确定后在另一个窗体中显示。
11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java参数传递.zip11.java...
c# 参数传递,参数调用,在运行处输入,程序路径+要传递的值,即可打开程序,在界面上显示值
c#参数传递 c#参数传递 c#参数传递 c#参数传递 c#参数传递 c#参数传递
C语言 函数调用 参数传递机制 探讨 txt