ЕСЛИ вы написали,
File f=new File("example.txt");
это означает, что вы только создали файловый объект, но не создали файл на жестком диске в соответствии с заданным путем. Также этот файловый объект находится в виртуальной памяти (Java). Если любое другое приложение уже загружено в виртуальную память может получить доступ или вызвать ссылку на объект файла, тогда это приложение может получить доступ к объекту файла.
Если вы создаете файл с помощью
f.createNewFile();
Тогда на вашем жестком диске есть настоящий файл. Затем любое другое приложение может получить к нему доступ как к другим файлам на вашем жестком диске. Вы бы видели здесь