J2SE -Java数据类型

来源:互联网 发布:淘宝 店招 css 编辑:程序博客网 时间:2024/06/16 08:02

前言

终于进入Java的脚步了,从最初的vb到现在的java,不得不说自己进步了很多,而且也发现语言的相同性!今天小编讲的是数据类型


What 常量&&变量

其实对于常量和变量大家应该很清楚,但是对于内部机制应该需要讲讲他们的不同

  • 常量:指的是不可变的变量,常量是存放在堆中的一个专门存放数据的常量池
  • 变量(final):指的是可以改变的量,由于变量比常量负责所以我简单介绍一下
    变量的本质:变量其实就是内存中的一块区域,而在内存中的这块区域我们给他起个名字,然后向他里面放数据,然后当我们想用的时候直接使用它的名称就可以使用,它的名称我们叫做声明,它里面的值叫做赋值,变量有一个非常关键的点就是必须向声明才可以赋值,而且也必须赋值
    这里写图片描述

对于java变量的类型有很多种方式

  • 按声明的位置划分:1局部变量:在方法和语句块内部定义的变量,2成员变量(公共变量)在方法体外面在类中
  • 按所属的数据类型划分:1。基本数据类型变量 2 引用数据类型变量

这里写图片描述


当我们知道这些非常熟悉的数据类型的时候又一点一定不要忽视,那就是这段程序是在内存中如何工作的!1首先程序是在我们的硬盘上,如果我们不运行那么他就是简单是一个程序,但是我们运行它后, 他会加载到load的内存中,然后操作系统找到代码的内方法,然后执行内存的管理 的步骤是1.在code segment 存放代码,data segment 存放静态变量和字符串常量,stack存放局部变量(栈),heap返回new出来的东西
这里写图片描述


整数数据占用的空间

这里写图片描述


float类型和long类型在使用的时候要在后面加f或者l,目的是为了int 类型和double类型


数据类型转换

  • boolean类型不可以转换为其他的数据类型,只能是true或者是false
    - int , char ,float 类型在混合运算的时候需要互相的转换
    - 容量小的会自动转换为容量的大,在这三种类型中做运算的时候会自动转换为int 类型
  • int类型转换为long类型,long类型转换为float类型,float类型转换为double类型
  • 当容量大的转换为容量小的时候我们需要使用强制转换,强制转换的过程是在前面加()里面写数据类型

总结

不要小看你数据类型,你不小心你就bug漫天飞,所以针对每一个知识点都要认真的去对待她!

原创粉丝点击