O'zgaruvchilar qanday saqlanadi?
O'zgaruvchilar qanday saqlanadi?

Video: O'zgaruvchilar qanday saqlanadi?

Video: O'zgaruvchilar qanday saqlanadi?
Video: Javascript asoslari | 5. Ma'lumot turlari 2024, May
Anonim

O'zgaruvchilar odatda saqlanadi RAMda. o'zi odatda yuqoridagi qoidalarga amal qiladi (funksiya ichida e'lon qilingan ko'rsatgich saqlanadi stekda), lekin u ko'rsatgan ma'lumotlar (xotira blokining o'zi yoki siz yangi yaratgan ob'ekt). saqlanadi uyum ustida.

Xuddi shunday, o'zgaruvchilar qayerda saqlanadi deb so'rashi mumkin.

Barcha global va statik o'zgaruvchilar ma'lumotlar segmentida, doimiylar esa kod segmentida saqlanadi. Global o'zgaruvchilar, ular qanday sozlanganiga qarab, bir nechta joyda bo'lishi mumkin - uchun misol , const globals bajariladigan faylning faqat o'qish uchun bo'limida bo'lishi mumkin.

Xuddi shunday, o'zgaruvchilar Java'da qanday saqlanadi? Barcha ob'ektlar Java bor saqlanadi uyum ustida. " o'zgaruvchilar "Ularga havolalar stekda bo'lishi mumkin yoki ular boshqa ob'ektlarda bo'lishi mumkin (keyin ular haqiqatan ham emas) o'zgaruvchilar , lekin maydonlar), bu ularni ham uyumga qo'yadi. Uyum bo'limida Ob'ektlar mavjud (shuningdek, havola bo'lishi mumkin o'zgaruvchilar ).

Yana savol tug'iladi, o'zgaruvchilar xotirada qanday saqlanadi?

The xotira a uchun uyasi o'zgaruvchi saqlanadi stekda yoki uyada. Bu e'lon qilingan kontekstga bog'liq: Har bir mahalliy o'zgaruvchan (ya'ni usulda e'lon qilingan) hisoblanadi saqlanadi stackda. Har bir statik o'zgaruvchi saqlanadi U mos yozuvlar turi yoki qiymat turi ichida e'lon qilinganidan qat'i nazar, uyumda.

Mahalliy o'zgaruvchilar stekda qanday saqlanadi?

Mahalliy o'zgaruvchilarni saqlash ustida stack amalga oshirish detali - asosan optimallashtirish. Siz buni shunday o'ylashingiz mumkin. Funktsiyani kiritishda hamma uchun bo'sh joy mahalliy o'zgaruvchilar biror joyga ajratilgan. Bu qarama-qarshidir o'zgaruvchilar manzillari o'zlari bo'lgan uyada ajratilgan saqlanadi boshqasida o'zgaruvchilar.

Tavsiya: