每日一记--java细节之问01

Posted 风中点球

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日一记--java细节之问01相关的知识,希望对你有一定的参考价值。

现在越来越觉得java基础细节的重要性了,这样才有交流的价值。

 

1、静态变量与非静态变量的区别?

①分配的空间:

静态变量存在于虚拟机的方法区中,并且只有一份这样的内存空间。

非静态变量需要通过new出类实例才能够存在,且分配于堆内存空间中,每new出一份类实例便存在一份变量。

②使用的方法上:

静态变量的使用可以通过类名.变量进行调用。

非静态变量需要先创建类实例,然后通过类实例.变量进行调用。

③生命周期

静态变量的生命周期伴随程序的整个阶段。

非静态变量的生命周期伴随着类实例存在的生命周期。

 

2、数组与链表的区别

①内存空间的分配

数组在内存空间的分配上是连续的,且具有固定的长度。

链表在内存的空间的分配不需要连续的内存空间,且长度不受限制。

②性能上

数组的查找性能相之较好。

链表在插入和删除上性能较好。

 

3、数组和链表的应用场景

数组:数据较少,需要做运算或者经常性的查询。

链表:线性表的长度或者规模难以估计,插入和删除的动作较多。

 

以上是关于每日一记--java细节之问01的主要内容,如果未能解决你的问题,请参考以下文章

JAVA每日一记

每日一记--jsp

每日一记8.7

iOS每日一记------------之 中级完美大整理

2018-12-12每日一记

[每日一记] Python报错 IndentationError: unexpected indent