Quanti byte occupa una matrice in Java? Supponiamo che sia una macchina a 64 bit e supponiamo anche che ci siano N elementi in una matrice, quindi tutti questi elementi occuperebbero 2 * N, 4 * N o 8 * N byte per diversi tipi di array.
E una conferenza a Coursera dice che occuperebbe 2 * N + 24, 4 * N + 24 o 8 * N + 24 byte per un array di elementi N e che i 24 byte sono chiamati overhead, ma non spiegano perché il sovraccarico è necessario.
Anche gli oggetti hanno overheads, ovvero 16 byte.
Quali sono esattamente questi overhead? Cosa sono questi 24/16 byte composti da?
Inoltre, questi overheads esistono solo in Java? Che ne dici di C, C ++ e Python?