String 详细介绍

1、String 是最基本的数据类型吗?

不是,java中基本类型有8个: int、short、byte、boolean、float、char、double、long

2、float f=3.4;是否正确?

不正确,3.4是双精度,将双精度给浮点型赋值,是向下转型,会损失精度,需要强制转型,  flort f = (flort)3.4, 或者 flort f = 3.4f

3、short s1 = 1; s1 = s1 + 1;有错吗?  short s1 = 1; s1 += 1;有错吗? 

short s1 = 1; s1 = s1 + 1;有错,由于1属于int型,s1+1也是int 型,将s1+1赋值short需要强转,

short s1 = 1; s1 += 1;没有错 因为s1+= 1;相当于s1 = (short)(s1 + 1);其中有隐含的强制类型转换。

4、int 和integer的区别

int是基础数据类型,integer是引用数据类型,int的值是0 integer的默认值是null,integer是int的包装类型

5、&& 和& 的区别

&& 如果前面的是false 后面的判断就不执行吗,若为 true后面的再判断,

& 不管前面的是 false还是true 都会执行后面的

6、栈(stack)、堆(heap)和方法区(method area)   参考地址:  解释内存中的栈(stack)、堆(heap)和方法区(method area)的用法。_methoad area和stack区别-CSDN博客

堆区

1、堆里面存放new出来的对象和数组,每个对象都包含一个与之对应的class的文件

2、jvm只有一个堆区,被所有线程共享,堆区不存放基本数据类型和引用对象,只存放对象本身

栈区

1、每个线程包含一个栈,栈中保存的是所有的变量,包括基本类型和引用类型,栈中每个变量包括类型、属性、值,

基本类型变量的值是具体的值,引用变量的值是对象在堆区存放的地址值,

              2、每个栈中的对象都是私有的,其他栈不能访问,

              3、栈分为3个本分:基本类型变量区、执行环境上下文、操作指令区(存放操作命令的)

静态区/方法区:

1.方法区又叫静态区,跟堆一样,被所有的线程共享。方法区包含所有的class和static变量。

2.方法区中包含的都是在整个程序中永远唯一的元素,如class,static变量。

3.—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值