В чем разница?
Вот берёшь и открываешь любой проект на джаве через проводник.
Исходная программа это один или больше файлов с расширением .java.
Исполняемая программа - это набор классов с расширением .class, которые являют собой своего рода сущности для программы.