System.out.print; System.out.println;每输出一次就会换行 Integer.parseInt 字符串转int Double.parseDouble 字符串转double
数组
存储结构连续,存储元素类型相同,随机访问
JVM
JVM栈:JVM栈正是java中方法执行时所占有的空间、局部变量会存于栈帧中
堆:堆是JVM内存中最大的一块,new出来的东西(称之为对象
或者实例
)都在堆上。
方法区
程序计数器:JVM执行代码解释执行的,即是一行一行执行字节码的,程序计数器用来记录当前执行的行数
本地方法栈:和JVM栈类似,区别是本地方法栈是给本地(native)方法使用的,而不是普通方法。
堆内存主要决定了Java程序的数据如何存储的问题。而JVM栈用来表示方法的执行流程, 它决定了程序如何执行,或者说如何处理数据。
引用数据类型的创建分为两部分:
-
首先是在栈上分配一片空间给引用数据类型的引用,简称
引用
,它是一个局部变量,直接存储在栈帧中。 -
在堆上开辟一片空间,用于存放引用数据类型的实际信息,称之为
对象
或者实例
基本数据类型与引用数据类型有什么区别
-
存储位置(本质区别)
-
基本数据类型不存在
引用
的概念,数据都是直接存储在栈上的栈帧里; -
引用数据类型在栈帧中存储引用,引用作为一个局部变量,存储的只是该引用类型在堆上对象的内存地址。
存储在堆上的对象存储具体信息,才是引用数据类型的实质
-
-
引申出,打印变量名区别:
-
基本数据类型,打印变量名就是该变量具体的数值
-
引用数据类型,没有办法直接访问对象,打印变量名(引用)会显示该引用存储的堆上的对象的内存地址。
-
布尔类型(boolean)默认值是false
引用数据类型默认值是null
增强for:无数组下标,不会改变元素取值
可变长参数:参数个数不确定,类型确定的情况,Java会自动把可变参数当作数组处理。可变参数用于形参列表中,并且只能出现在形参列表的最后
this 是指向成员变量的,否则就是就近原则
1.int是基本数据类型之一,而Integer是对象类型。
2.Integer是int的包装类,int则是java的一种基本数据类型。
3.Integer变量必须实例化之后才能使用,而int变量不需要。
4.Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值。
5.int默认值为 0,Integer默认为null
Java有且仅有值传递,Java中的方法不能直接改变实参本身。
标签:存储,Java,JVM,int,数据类型,Day3,引用,Learning,Integer From: https://www.cnblogs.com/cff1/p/17860579.html