JAVA Day11
Posted 别来无恙。。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA Day11相关的知识,希望对你有一定的参考价值。
JAVA Day11
内存分析
内存分析(详解与代码)_林高禄-CSDN博客_内存分析
堆的特点:
1、堆用于存储创建好的对象和数组(数组也是对象)
2、JVM只有一个堆,被所有线程共享
3、堆是一个不连续的内存空间,分配灵活,速度慢!
栈的特点:
1、栈描述的是方法执行的内存模型,每个方法被调用都会创建一个栈帧(存储局部变量、操作数、方法出口等)
2、JVM为每个线程创建一个栈,用于存放该线程执行方法的信息(实际参数、局部变量等)
3、栈属于线程私有,不能实现线程间的共享!
4、栈的存储特点是:先进后出,后进先出
5、栈是由系统自动分配,速度快!栈是一个连续的内存空间!
方法区(又叫静态区)特点:
1、JVM只有一个方法区,被所有线程共享!
2、方法区实际也是堆,只是用于存储类、常量相关的信息!
3、用来存放程序中永远是不变或唯一的内容。(类信息【Class对象】,静态变量、字符串常量等)
三种初始化
静态初始化就是static,动态初始化就是new
所谓的静态和动态是相对于程序运行是而言的,静态是在程序编译时就初始化好了的,动态初始化是在程序运行是才动态分配内存空间。
数组的边界
数组的使用
//数组反转
package struct;
public class day10 {
public static void main(String[] args) {
int[] arrays = {1,2,3,4,5};
int[] reverse = reverse(arrays);
printArray(reverse);
}
public static int[] reverse(int[] arrays){
int[] result = new int[arrays.length];
for (int i = 0,j =result.length-1; i < arrays.length ; i++,j--) {
result[j] = arrays[i];
}
return result;
}
public static void printArray(int[] arrays){
for (int i = 0; i < arrays.length ; i++) {
System.out.print(arrays[i]+" ");
}
以上是关于JAVA Day11的主要内容,如果未能解决你的问题,请参考以下文章
错误记录Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )(代码片段
错误记录Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )(代码片段
11.按要求编写Java应用程序。 创建一个叫做机动车的类: 属性:车牌号(String),车速(int),载重量(double) 功能:加速(车速自增)减速(车速自减)修改车牌号,查询车的(代码片段