⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 memoryinit.java

📁 java内存分配演示程序
💻 JAVA
字号:
package com.ysu.cwy;

import java.util.ArrayList;
import java.util.List;

public class MemoryInit {
	private int memorySize;                        //内存大小
    private int memoryBlockSize;                   //内存块的个数
    
    //构造函数
    public MemoryInit(int memorySize) {
		this.memorySize = memorySize;
		List<MemoryBlock> list=createBlocks();                                                                                                                                       
		memoryBlockSize=list.size();
	}//end method MemoryInit

	public int getMemorySize() {
		return memorySize;
	}//end method getMemorySize
	
	/**
	 * @function 初始化内存
	 * @return  内存块的链表
	 */
	public synchronized List<MemoryBlock> createBlocks(){
    	//内存大小分配函数 y=20+40x;
    	List<MemoryBlock> list=new ArrayList<MemoryBlock>();
    	MemoryBlock memoryBlock;
    	MemoryCalculation mc=new MemoryCalculation();
    	int blockId;                                  //内存块ID
    	int blockStartPlace;                          //内存块开始位置
    	int blockEndPlace;                            //内存块结束位置
    	int blockSize;                                //内存块大小
    	
    	for(int i=0;i<mc.getBlockSize(memorySize);i++){
    		blockId=i;
    		blockStartPlace=mc.getMemoryBlockStartPlace(i, memorySize);
    		blockEndPlace=mc.getMemoryBlockEndPlace(i, memorySize);
    		blockSize=blockEndPlace-blockStartPlace+1;
    		memoryBlock=new MemoryBlock(blockId,blockStartPlace,blockEndPlace,blockSize);
    		list.add(memoryBlock);
    	}
    	return list;
    }//end method createBlocks
    
	/**
	 * @function 获得内存的最大地址
	 * @return  返回最大地址
	 */
	public int getMaxMemoryAddress(){
		return memorySize-1;
	}//end method getMaxMemoryAddress


	public int getMemoryBlockSize() {
		return memoryBlockSize;
	}


	public void setMemoryBlockSize(int memoryBlockSize) {
		this.memoryBlockSize = memoryBlockSize;
	}
  
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -