Java中的数据类型和引用
JAVA数据类型分primitive数据类型和引用数据类型。
Java中的primitive数据类型分为四类八种。primitive也不知道怎么翻译比较贴切, 暂且叫他基本数据类型吧, 其实直接从英文的字面意思理解更为容易。
primitive数据类型包括: boolean , char , 整型, 浮点型。 整型又包括:short, byte, int, long 。 浮点型又包括:float, double 。
所有primitive总共是八种。 大小分别为:boolean(由JVM决定) char(16 bits) short(16 bits) byte(8 bits) int(32 bits) long(64bits) float(32 bits) double(64 bits)
除了基本的数据类型, Java中剩下的都是引用(reference)。
一般来说, 对象的声明、赋值、创建有三个步骤: 通过一个简单的小例子来看 :
Dog myDog = new Dog(); 通过这句话我们可以创建一个Dog的对象(myDog),以后看到这种new语句一定要在脑海中有三个步骤把它拼凑起来 :
- step1: Dog myDog = new Dog(); 执行语句中的红色部分, 声明了一个引用 myDog(要求java虚拟机在栈上分配空间给引用变量,并命名为myDog, 此引用变量将永远被固定为Dog类型)
- setp2: Dog myDog = new Dog(); 执行语句中的红色部分, 创建了一个对象(要求java虚拟机在堆上分配空间给Dog对象)
- setp3: Dog myDog = new Dog(); 执行语句中的 “=” 符号, 连接了对象和引用 (把Dog对象赋值给myDog这个引用)
此处有一个特殊的对象需要特别说明下, 那就是数组, 对, 数组也是对象! 数组对象的创建过程如下 : (图片截自HeadFirst Java)

Java中的数据类型和引用的更多相关文章
- Java中的数据类型及相互转换方法
本文主要讲解两个部分: 一.Java中的数据类型有哪些? 二.数字类型和字符串类型相互转换的方法? 一.Java中的数据类型有哪些: Java中的数据类型有:基本数据类型和引用数据类型: 基本数据类型 ...
- Java中基本数据类型和包装类
参考:深入剖析Java中的装箱和拆箱; Java中基本数据类型和包装类互转中 缓冲机制的使用; java学习笔记:装箱和拆箱,包装器和缓冲池 Java 各 类型数据在内存中分配情况详解 一 java内 ...
- Java中的基本类型和引用类型变量的区别
Java中的基本类型和引用类型变量的区别 学了一年多,说实话你要我说这些东西我是真说不出来是啥意思 基本类型: 基本类型自然不用说了,它的值就是一个数字,一个字符或一个布尔值. 引用类型: ...
- 理解--->Java中的值传递&引用传递
转自:http://url.cn/5tL9F5D 值传递和引用传递 值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际 ...
- 讲说问题:|和||的区别以及&和&&的区别。2、Java中的数据类型分几类?基本数据类型有哪些?
|和||的区别以及&和&&的区别. |或 为或运算 判断为逻辑或 || 为短路或 只有逻辑判断 当左侧为真不再继续判断 &与 为与运算 判断为逻辑与 && ...
- Java中关于数据类型的一些问题
Java中关于数据类型的一些问题 总结一下最近笔试遇到的一些关于Java中数据类型的一些问题. 虽然比较基础,但在实际做题却很容易出错的点,而且往往这些题出错了会给面试官很不好的感觉:你的基础不好. ...
- 010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二——变量类型——即Java中的数据类型
010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二--变量类型--即Java中的数据类型 Java中变量的三要素 变量名 变 ...
- 零基础学习java------day2------关键字、标志符、常量、进制键的转换、java中的数据类型、强制类型转换的格式
今日内容要求: 1. 了解关键字的概念及特点,了解保留字 2. 熟练掌握标识符的含义,特点,可使用字符及注意事项 3. 了解常量的概念,进制,进制之间相互转换,了解有符号标识法的运算方式 4. 掌握变 ...
- JAVA中MESSAGEBOX,静态类直接引用
原文:JAVA中MESSAGEBOX,静态类直接引用 package cisdi.mes.wrm.mcode.serviceImpl; import javax.persistence.Entity; ...
随机推荐
- 字符串和byte数组的相互转化
关于byte[]数组转十六进制字符串: public static String getHexString(byte[] b) throws Exception { String result = & ...
- Hibernate 事物隔离级别
Hibernate事务和并发控制 ++YONG原创,转载请注明 1. 事务介绍: 1.1. ...
- C++ error:Debug Assertion Failed.Expression:_BLOCK_TYPE_IS_VALID(phead->nBlock)
Debug Assertion Failed.Expression:_BLOCK_TYPE_IS_VALID(phead->nBlockUse) 关于上面这个错误,我在上一篇文章中的程序遇到过了 ...
- 1.2 the structure of a compiler
Compiler 1.2 the structure of a compiler Compiler : analysis and synthesis syntactically 语法上的 sema ...
- ORA-02273: this unique/primary key is referenced by some foreign keys
关于ORA-02273错误,以前还真没有仔细留意过.昨天遇到了这个问题,遂顺便总结一番,以后遇到这类问题就可以直接用下面方案解决.如下所示,我们首先准备一下测试环境. CREATE TABLE TES ...
- SharePoint 2013 安装配置(2)
上一篇中,我们已经安装了Windows Server 2012 R2.现在第二部分,如何在Windows Server 2012 R2中安装Active Directory域控制器.请按照以下步骤. ...
- App测试流程及测试点
1 APP测试基本流程 1.1流程图 接收版本 尽快申请到正式环境下测试 不符 App测试版本送测规范 用户行为统计测试 后台订单统计测试 尽快申请到正式环境下测试 兼容性测试.性能压力测试 功能测试 ...
- Round #322 (Div. 2) 581D Three Logos (模拟)
先枚举两个矩形,每个矩形横着放或竖着放,把一边拼起来, 如果不是拼起来有缺口就尝试用第三个矩形去补. 如果没有缺口就横着竖着枚举一下第三个矩形和合并的矩形x或y拼接. #include<bits ...
- [dp]uestc oj E - 菲波拉契数制
E - 菲波拉契数制 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submi ...
- [机器学习] 简单的机器学习算法和sklearn实现
机器学习基础算法理解和总结 KNN算法 理解 KNN其实是最好理解的算法之一,其实就是依次和空间中的每个点进行距离比较,取距离最近的N个点,看这N个点的类别,那么要判断的点的类别就是这N个点中类别占比 ...