java 基本类型 引用类型_Java中的基本类型和引用类型变量的区别
基本类型:
基本类型自然不用说了,它的值就是一个数字,一个字符或一个布尔值。
引用类型:
是一个对象类型,值是什么呢?它的值是指向内存空间的引用,就是地址,所指向的内存中保存着变量所表示的一个值或一组值。
举例说明:
int a;
a=250; //声明变量a的同时,系统给a分配了空间。
引用类型就不是了,只给变量分配了引用空间,数据空间没有分配,因为谁都不知道数据是什么,整数,字符?我们看一个错误的例子:
MyDate today;
today.day = 4; //发生错误,因为today对象的数据空间未分配。
那我们怎么给它赋值?引用类型变量在声明后必须通过实例化开辟数据空间,才能对变量所指向的对象进行访问。举个例子:
MyDate today; //将变量分配一个保存引用的空间
today = new MyDate(); //这句话是2步,首先执行new MyDate(),给today变量开辟数据空间,然后再执行赋值操作
//引用变量赋值
MyDate a,b; //在内存开辟两个引用空间
a = new MyDate(); //开辟MyDate对象的数据空间,并把该空间的首地址赋给a
b = a; //将a存储空间中的地址写到b的存储空间中
如下图示
引用传递 和 值传递
引用类型:除了在函数传值的时候是"引用传递",在任何用"="向对象变量赋值的时候都是"引用传递"。
值传递:基本类型的传递都属于值传递,和C语言一样,当把Java的基本数据类型(如 int,char,double等)作为入口参数传给函数体的时候,传入的参数在函数体内部变成了局部变量,这个局部变量是输入参数的一个拷贝,所有的函 数体内部的操作都是针对这个拷贝的操作,函数执行结束后,这个局部变量也就完成了它的使命,它影响不到作为输入参数的变量。这种方式的参数传递被称为"值 传递"。
java 基本类型 引用类型_Java中的基本类型和引用类型变量的区别相关推荐
- Java中的基本类型和引用类型变量的区别
基本类型: 基本类型自然不用说了,它的值就是一个数字,一个字符或一个布尔值. 引用类型: 是一个对象类型,值是什么呢?它的值是指向内存空间的引用,就是地址,所指向的内存中保存着变量所表示的一个值或一组 ...
- java包装器类_Java中的基本类型和包装类
Java中基本数据类型与包装类型有 基本类型 包装器类型 boolean Boolean char Character int Integer byte Byte short Short long L ...
- java5引入包装类型的意义_Java中的基本类型和包装类
Java中基本数据类型与包装类型有 基本类型 包装器类型 boolean Boolean char Character int Integer byte Byte short Short long L ...
- java equals equalsignorecase 性能_JAVA中字符串比较equals()和equalsIgnoreCase()的区别
JAVA中字符串比较equals()和equalsIgnoreCase()的区别 1.使用equals( )方法比较两个字符串是否相等.它具有如下的一般形式: boolean equals(Objec ...
- java基本类型引用类型_Java基本类型和引用类型
8种基本类型 一.4种整型 byte 1字节 -128--127 short 2 字节 -32,768 -- 32,767 int 4 ...
- java long类型判断_Java中的long类型和Long类型比较大小
Java中我们经常要做一些判断,而对于判断的话,用的最多的便是">"."=="." Java中Long和long的区别 Java的数据类型分为两 ...
- java自动类型提升_Java中的基本数据类型转换(自动、强制、提升)
说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数据类型,现在来解释下它们之间的转换关系. 自动类型转换 自 ...
- java枚举类型定义_java中的枚举类型怎么定义?
展开全部 Enum作为Sun全新引进的一个关键字,看起来很象是特殊的class, 它也可以有自62616964757a686964616fe59b9ee7ad9431333236366331己的变量, ...
- java long类型大小_java中long类型占多少字节
所谓的占用字节数 就是申请内存的时候所占的空间大小. long 8字节 最小值是 -9,223,372,036,854,775,808(-2^63): 最大值是 9,223,372,036,854,7 ...
最新文章
- 十二张图详解淘宝架构变迁
- Void void Void用在泛型
- php如何获取上传文件的后缀?
- go语言实现将word文件转成pdf_超实用的PDF在线转换器,你绝对用的到~
- 德国汽车厂发生机器人杀人事件 人机协作是大势所趋
- 使用磁盘为Linux添加swap
- 中移4G模块-ML302-OpenCpu开发-CJSON
- 根号x_8.八年级数学:根号(2a1)=12a,怎么求a的取值范围?二次根式
- 常见List面试问题
- Futter基础第7篇: 实现底部导航
- xshell用ssh连接VMware中的ubuntu
- 贝莱德集团CEO劳伦斯·芬克: 伟大的公司,都有一个长期战略
- 有个码龄 10 年的程序员跟我说:“他编程从来不用鼠标”,我说:
- 操作系统每日一题 2020 July
- Linux Mint 笔记本亮度调节总结
- C语言求数列最小公倍数,C语言复习---获取最小公倍数(公式法:两个数相乘等于最小公倍数乘以最大公约数)...
- jquery获取元素四种方式。
- Laravel教程 八:queryScope 和 setAttribute
- RabbitMQ高可用集群搭建
- 痴狂青年孙正义竟然按50年规划行事
热门文章
- php表格js特效,JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
- linux reboot命 过程,IDRAC安装dell服务器操作系统(linux or windows),用到生命周期管理器...
- Spring MVC 测试 | 模拟提交表单
- php值对象模式场景,php设计模式介绍之值对象模式第1/5页
- Android仿探探卡片拖拽,Vue 仿探探拖拽卡片的效果
- __builtin_expect详解
- html5 内嵌网页_如何分析并优化网页的性能?新梦想软件测试
- Web——Request请求
- 【转】在WPF中自定义控件
- 一步步编写操作系统 13 栈