javaÖÐÕ»(stack)ºÍ¶Ñ(heap)µÄÇø±ð
¼øÓÚÍøÉ϶ÔJavaµÄ¶ÑÕ»Çø·Ö£¬ÖÚ˵·×ç¡£¬ÓеİÑC++µÄ¶ÑÕ»Ò²»ì½øÀ´£¬ÓеÄûÓзÖÇåStack£¬HeapµÄÖÐÎÄ·Ò룬¸ãµÃÎÒ°ÑStackµ±×÷¶Ñ£¬Heapµ±×÷Õ»£¬»ìÂÒÁË£¡×òÌì²Î¼ÓÒ»ÍâÆóµÄ±ÊÊÔ£¬Ñ¡ÔñÓ¢ÎÄ´ð°¸Ê±£¬Ñ¡´íÁË£¬ÖªµÀ´ð°¸ÊǶѣ¬È´Ñ¡ÔñÁËStack£¡½ñÌ죬¾ö¶¨°ÑÁ½ÕßÇø·ÖÇå³þ£¡
Ê×ÏÈ·ÖÇå³þStack£¬HeapµÄÖÐÎÄ·Ò룺Stack—Õ»£¬Heap—¶Ñ¡£
ÔÚÖÐÎÄÀStack¿ÉÒÔ·ÒëΪ“¶ÑÕ»”£¬ËùÒÔÎÒÖ±½Ó²éÕÒÁ˼ÆËã»úÊõÓïÀïÃæ¶ÑºÍÕ»¿ªÍ·µÄ´ÊÓ
¶Ñ´æ´¢£º heapstorage ¶Ñ´æ´¢·ÖÅ䣺 heapstorage allocation ¶Ñ´æ´¢¹ÜÀí£º heap storage management
Õ»±àÖ·£º stack addressing Õ»±ä»»£ºstack transformation Õ»´æ´¢Æ÷£ºstack memory Õ»µ¥Ôª£º stack cell
½Ó×Å£¬×ܽáÔÚJavaÀïÃæHeapºÍStack·Ö±ð´æ´¢Êý¾ÝµÄ²»Í¬¡£
Heap(¶Ñ)
Stack(Õ»)
JVMÖеŦÄÜ
ÄÚ´æÊý¾ÝÇø
ÄÚ´æÖ¸ÁîÇø
´æ´¢Êý¾Ý
¶ÔÏóʵÀý(1)
»ù±¾Êý¾ÝÀàÐÍ, Ö¸Áî´úÂë,³£Á¿,¶ÔÏóµÄÒýÓõØÖ·(2)
1. ±£´æ¶ÔÏóʵÀý£¬Êµ¼ÊÉÏÊDZ£´æ¶ÔÏóʵÀýµÄÊôÐÔÖµ£¬ÊôÐÔµÄÀàÐͺͶÔÏó±¾ÉíµÄÀàÐͱê¼ÇµÈ£¬²¢²»±£´æ¶ÔÏóµÄ·½·¨£¨·½·¨ÊÇÖ¸Á±£´æÔÚstackÖУ©¡£
¶ÔÏóʵÀýÔÚheapÖзÖÅäºÃÒÔºó£¬ÐèÒªÔÚstackÖб£´æÒ»¸ö4×Ö½ÚµÄheapÄÚ´æµØÖ·£¬ÓÃÀ´¶¨Î»¸Ã¶ÔÏóʵÀýÔÚheapÖеÄλÖ㬱ãÓÚÕÒµ½¸Ã¶ÔÏóʵÀý¡£
2. »ù±¾Êý¾ÝÀàÐͰüÀ¨byte¡¢int¡¢char¡¢long¡¢float¡¢double¡¢booleanºÍshort¡£
º¯Êý·½·¨ÊôÓÚÖ¸Áî.
=======================
ÒýÓÃÍøÉϹ㷺Á÷´«µÄ“Java¶ÑºÍÕ»µÄÇø
Ïà¹ØÎĵµ£º
Òª¿ªÊ¼Ñ§Ï°JavaÁË
ÉùÃ÷£ºÒÔÏÂÊÇÎÒ×ªÔØµÄ£¬ÎÒ¾õµÃͦ²»´íµÄ ÄÃÀ´·ÖÏí¡£
j2eeµÄѧϰ˳Ðò
ÎÒÈÏΪj2eeÒ»¶¨ÒªÑÐò½¥½ø£¬ÎÒ×Ô¼º¾ÍÊÇÕâÑù£¬´ÓÒ»¸öÒ»°ã¸ßУ¼ÆËã»úϵ±ÏÒµ£¬
È»ºóÂú»³ÃÎÏëºÍ¼¤ÇéÈ¥ÕÒ¹¤×÷£¬ÎÒkao,ÄǸöµ¥Î»¶¼¸øÎÒ°×ÑÛ£¬Á¬»áÀϼҵÄÐͼÓÐÁË£¬ÄǸöʱºòºÍ¼¸¸ö¸çÃÇ£¬×¡ÔÚµØÏÂÊÒ£¨¾ÍÔÚ±±º½ÄÇÀ¡£»·¾³Ï൱¶ñÁÓ£¬Å® ......
GRASPģʽ:General Responsibility Assignment Software Patterns£ºÍ¨ÓÃÔðÈηÖÅäÈí¼þģʽ
ÀïÃæÖØÒªµÄ¸ÅÄîÊÇÔðÈΣ¬ÔðÈÎÊÇÀà¼äµÄÒ»ÖÖºÏÔ¼»òÊÇÒåÎñ£¬¿ÉÒÔϸ·ÖΪÁ½²¿·Ö£¬Óù«Ê½±íʾÈçÏ£º
ÔðÈÎ = ÖªµÀÔðÈÎ + ÐÐΪÔðÈΣ¨ÕâÀïÃæËÆºõ´æÔÚ¸ÅÄîµÄÑ»·¶¨Ò壩
×¢£ºÓÃͨË׵ϰÀ´½²£¬ÔðÈξÍÊÇÒ»¸öÀàÖªµÀÒª×öʲô£¬²¢ÇÒÄܹ»×öʲô¡£
· ......
ÔÌâÈçÏ£ºÓÃ1¡¢2¡¢2¡¢3¡¢4¡¢5ÕâÁù¸öÊý×Ö£¬ÓÃjavaдһ¸ö³ÌÐò£¬´òÓ¡³öËùÓв»Í¬µÄÅÅÁУ¬È磺512234¡¢412345µÈ£¬ÒªÇó£º"4"²»ÄÜÔÚµÚÈý룬"3"Óë"5"²»ÄÜÏàÁ¬¡£
½âÌâ˼·£º
ºÜÃ÷ÏÔ£¬ÕâÊÇÒ»¸öµÝ¹éËã·¨¡£ÎÒÃÇ¿ÉÒÔÅÅÁн«Õâ6¸öÊý°´´ÓСµ½´óµÄ˳ÐòÅÅһϣ¬Èç¹ûÊÇ1,2,3,4,5,6£¬ÄÇô»áÓÐ1 ......
import java.io.*;
public class IoTest
{
public static void main(String[] args)
{
String s;
s=calculate();
System.out.println(s);
}
static String calculate()
{
StringBuffer sb=new StringBuffer("");
try{
FileReader re ......