Я не знаю, в чем именно вы сомневаетесь, но я думаю, что во время компиляции текстовое представление программы переводится в машинно-понятную форму (в случае Java это будет Java-байт-код).То же самое происходит с такими операциями, как назначения.Во время выполнения такие операции выполняются.Таким образом, чтобы точно ответить на ваш вопрос, операция присваивания является феноменом как компиляции, так и времени выполнения (в обоих случаях выполняются определенные действия - в случае компиляции они выполняются компилятором Java, а во время выполнения - JVM).
Например,
class Foo { }
class Bar { }
Foo f = new Bar();
Этот код будет отклонен компилятором.Вам будет кричать, что вы пытаетесь назначить несовместимые типы.