我主要在Java中工作,最近正在嘗試爲Mac和iOS應用程序開發學習Objective-C。現在,這種語言與我以前使用的語言,指針,消息等完全不同,但我似乎正在選擇它。這不是一個編碼問題,但我寧願熟悉我正在處理的內容,而不是僅僅知道「因爲事情就是這樣」。爲什麼Objective-C使用頭文件而不是像Java那樣的單文件類?
爲什麼Objective-C語言需要頭文件?他們與.m文件分開的實際目的是什麼?爲什麼函數需要在頭文件中聲明而不是僅僅實現?它只是那些沒有從舊語言中消失的東西之一,或者與Java的單一類文件相比,它有真正的優勢嗎?
FWIW,像Pascal和Delphi這樣的一些*更老的編譯語言不需要頭文件。他們使用單元,其中接口和實現部分在一個文件中,並且聲明等以編譯器友好的二進制格式提供。 –