Без понимания что такое адресное пространство понять что такое указатель нельзя. А всякие концепции это напускание тени на плетень, один вред.
Сама идея очень проста. Только мне, как джависту она оказалась не очевидной. Когда мы передаем (например в функцию) переменную, то мы передаем весь объем информации, который содержится в этой переменной. А это могут быть гигабайты. Когда же мы передаем указатель, то передаем только точное местоположение, координату этой переменной. Это простой int. Это гораздо экономнее для памяти.
Это все и в Java есть, только называется иначе. Примитивный тип данных и ссылочный тип данных. Работая с примитивами мы работаем с самими данными, а работая со ссылками из стека в кучу, мы работаем именно с указателем. Зачем надо было придумывать терминологическую путаницу не очень понятно.