導航:首頁 > 源碼編譯 > 每個編譯單元就是一個

每個編譯單元就是一個

發布時間:2025-04-13 06:53:47

A. android的src下面可以包含多個package嗎

當然可以,src目錄下的package用戶可以隨意創建。
1.package就是java中的包,一個包就是一個類庫單元,包內包含有一組類,它們在單一的名稱空間之下被組織在了一起。這個名稱空間就是包名。可以使用import關鍵字來導入一個包。例如使用import java.util.*就可以導入名稱空間java.util包裡面的所有類。所謂導入這個包裡面的所有類,就是在import聲明這個包名以後,在接下來的程序中可以直接使用該包中的類。
2.之所以要導入包名,就是要提供一個管理名稱空間的機制。如果有兩個類A類和B類都含有一個具有相同特徵標記(參數列表)的方法f(),即便在同一段代碼中同時使用這兩個方法f(),也不會發生沖突,原因在於是不同的類對象調用,所以兩個方法即便同名也不會發生沖突。
3.當編寫一個Java源代碼文件時,此文件通常被稱為編譯單元。每個編譯單元都必須有一個後綴名.java,而在編譯單元內有且僅有一個public類,否則編譯器就不會接受。該public類的名稱必須與文件的名稱相同(包括大小寫,但不包括後綴名.java)。如果在該編譯單元之中還有額外的類的話,那麼在包之外的世界是無法看見這些類的,因為它們不是public類,而且它們主要用來為主public類提供支持。
4. 當編譯一個.java文件(即一個編譯單元)時,在.java文件中的每個類都會有一個輸出文件,而該輸出文件的名稱與.java文件中每個類的名稱相同,只是多了一個後綴名.class。因此在編譯少量.java文件之後,會得到大量的.class文件。每一個.java文件編譯以後都會有一個public類,以及任意數量的非public類。因此每個.java文件都是一個構件,如果希望許許多多的這樣的構件從屬於同一個群組,就可以在每一個.java文件中使用關鍵字package。而這個群組就是一個類庫。

B. c++分離式編譯的好處是什麼

1、如果有錯誤能快速找到。
2、實現模塊多用。

分離編譯模式是指:一個程序(項目)由若干個源文件共同實現,而每個源文件單獨編譯生成目標文件,最後將所有目標文件連接起來形成單一的可執行文件的過程。
分離編譯模式是C/C++組織源代碼和生成可執行文件的方式。在實際開發大型項目的時候,不可能把所有的源程序都放在一個頭文件中,而是分別由不同的程序員開發不同的模塊,再將這些模塊匯總成為最終的可執行程序。
這里就涉及到不同的模塊(源文件)定義的函數和變數之間的相互調用問題。C/C++語言所採用的方法是:只要給出函數原型(或外部變數聲明),就可以在本源文件中使用該函數(或變數)。每個源文件都是獨立的編譯單元,在當前源文件中使用但未在此定義的變數或者函數,就假設在其他的源文件中定義好了。每個源文件生成獨立的目標文件(obj文件),然後通過連接(Linking)將目標文件組成最終的可執行文件。
程序編譯的簡要過程包括預處理(Preprocessing)、編譯(Compilation)、匯編(Assembly)和連接(Linking)。

C. JAVA中的public classa是什麼意思為什麼只能有一個謝謝

public class是公共類的意思,public 是訪問修飾符.為什麼只有一個,java規定,一個類文件,public 修類的class只有一個,並且類名必須和你新建的這個類文件名一樣,所以一個類文件中可以有多個類,但由public修飾的類只能有一個。

(3)每個編譯單元就是一個擴展閱讀:

Java具有簡單性、面向對象、分布式、健壯性、安全性、平台獨立與可移植性、多線程、動態性等特點 。Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。

編程工具

Eclipse:一個開放源代碼的、基於Java的可擴展開發平台 。

NetBeans:開放源碼的Java集成開發環境,適用於各種客戶機和Web應用。

IntelliJ IDEA:在代碼自動提示、代碼分析等方面的具有很好的功能。

MyEclipse:由Genuitec公司開發的一款商業化軟體,是應用比較廣泛的Java應用程序集成開發環境 。

EditPlus:如果正確配置Java的編譯器「Javac」以及解釋器「Java」後,可直接使用EditPlus編譯執行Java程序 。

工作原理:

由四方面組成:

(1)Java編程語言

(2)Java類文件格式

(3)Java虛擬機

(4)Java應用程序介面

參考資料:網路:java

菜鳥網:Java基礎語法

Java從入門到精通(第3版):清華大學出版社:豆瓣

D. c++程序的C++程序的構成和書寫形式

C++程序的結構和書寫格式歸納如下:
1.一個C++程序可以由一個程序單位或多個程序單位構成。每一個程序單位作為一個文件。在程序編譯時,編譯系統分別對各個文件進行編譯,因此,一個文件是一個編譯單元。
2.在一個程序單位中,可以包括以下幾個部分:
① 預處理命令。上節4個程序中都包括#include命令。
② 全局聲明部分(在函數外的聲明部分)。在這部分中包括對用戶自己定義的數據類型的聲明和程序中所用到的變數的定義。
③ 函數。函數是實現操作的部分,因此函數是程序中必須有的和最基本的組成部分。每一個程序必須包括一個或多個函數,其中必須有一個(而且只能有一個)主函數(main函數)。
但是並不要求每一個程序文件都必須具有以上3個部分,可以缺少某些部分(包括函數)。
3.一個函數由兩部分組成:
① 函數首部,即函數的第一行。包括函數名、函數類型、函數屬性、函數參數(形參)名、參數類型。
註:一個函數名後面必須跟一對圓括弧, 函數參數可以預設,如int main( )。
② 函數體,即函數首部下面的大括弧內的部分。如果在一個函數中有多個大括弧,則最外層的一對{ }為函數體的范圍。
函數體一般包括:
①局部聲明部分 (在函數內的聲明部分)。包括對本函數中所用到的類型、函數的聲明和變數的定義。
註:對數據的聲明既可以放在函數之外(其作用范圍是全局的),也可以放在函數內(其作用范圍是局部的,只在本函數內有效)。
②執行部分。由若干個執行語句組成,用來進行有關的操作,以實現函數的功能。
4.語句包括兩類:一類是聲明語句,另一類是執行語句。 C++對每一種語句賦予一種特定的功能。語句是實現操作的基本成分,顯然,沒有語句的函數是沒有意義的。C++語句必須以分號結束。
5.一個C++程序總是從main函數開始執行的,而不論main函數在整個程序中的位置如何。
6.類(class)是C++新增加的重要的數據類型,是C++對C的最重要的發展。有了類,就可以實現面向對象程序設計方法中的封裝、信息隱蔽、繼承、派生、多態等功能。在一個類中可以包括數據成員和成員函數,他們可以被指定為私有的(private)和公用的(public)屬性。私有的數據成員和成員函數只能被本類的成員函數所調用。
7.C++程序書寫格式自由,一行內可以寫幾個語句, 一個語句可以分寫在多行上。C++程序沒有行號,也不像FORTRAN或COBOL那樣嚴格規定書寫格式(語句必須從某一列開始書寫)。
8.一個好的、有使用價值的源程序都應當加上必要的注釋,以增加程序的可讀性。C++還保留了C語言的注釋形式,可以用「/*……*/」對C++程序中的任何部分作注釋。在「/*」和「*/」之間的全部內容作為注釋。
用「//」作注釋時,有效范圍只有一行,即本行有效,不能跨行。而用「/*……*/」作注釋時有效范圍為多行。只要在開始處有一個「/*」,在最後一行結束處有一個「*/」即可。因此,一般習慣是: 內容較少的簡單注釋常用「//」,內容較長的常用「/*……*/ 」。

E. Java中的四種訪問控制域是什麼

private,public,protected,默認不寫(firendly)

1、Class類的訪問許可權:
public:可以供所有的類訪問。
默認:默認可以稱為friendly但是,java語言中是沒有friendly這個修飾符的,這樣稱呼應該是來源於c++。默認的訪問許可權是包級訪問許可權。
即如果寫了一個類沒有寫訪問許可權修飾符,那麼就是默認的訪問許可權,同一個包下的類都可以訪問到,即使可以實例化該類
(當然如果這個類不具有實例化的能力除外,比如該類沒有提供public的構造函數)。

說明:
1、每個編譯單元(類文件)都僅能有一個public class
2、public class的名稱(包含大小寫)必須和其類文件同名。
3、一個類文件(*.java)中可以不存在public class。
這種形式的存在的場景:如果我們在某個包內撰寫一個class,僅僅是為了配合同包內的其他類工作,而且
我們不想再為了撰寫說明文檔給客戶(不一定是現實意義的客戶,可能是調用這個類的類)看而傷腦筋,而且有可能過一段時間之後
有可能會徹底改變原有的做法,並完全舍棄舊版本,以全新的版本代替。
4、class不可以是private和protected。
5、如果不希望那個任何產生某個class的對象,可以將該類得所有構造函數設置成private。但是即使這樣也可以生成該類的對象,就是class的static的成員(屬性和方法)可以辦到。

2、類成員變數的訪問許可權:
public:緊接public的屬性任何類都可以訪問到。可以直接使用ClassName.propertyName。但是從類的封裝性上來考慮將一個類的屬性定義成public一般很少使用,
在定義靜態常量的時候通暢會這樣定義。如:public static final int PAGE_SIZE=10;
private:只有類本身內部的方法可以訪問類的private屬性,當然內部類也可以訪問其外部類的private成員的。(屬性和方法)
默認(friendly):包級可見,同一個包內的類可以訪問到這個屬性,可以直接使用className.propertyName來訪問,但是從類的封裝性特性來說很少這樣使用類的屬性的。
protected:關鍵字所處理的是所謂「繼承」的觀念。對於同一包的其他類,protected=默認,對於不同包的類,如果存在繼承關系,而baseClass存在protected屬性,則可以被其自繼承,而不同包的其他類
則不能訪問類的protected屬性。

3、類的成員方法的訪問許可權:
其從語法角度來講,這些訪問許可權控制符作用於類的方法和作用於類的屬性上的效果是一樣的。
public:所有類可見。
pirvate:只有同一類內部的方法可見,在有就是內部類也可以訪問到。
默認(friendly):包內可見。
protected:繼承可見。

4、訪問許可權存在的理由
1、「讓使用者無法碰觸到他們不該碰觸的東西。」這些東西僅供類的內部機制使用。將某些成員聲明成private,對於使用者來說可以說是一種服務,
因為這樣使用者可以知道哪些是他關注的哪些是不重要的,不需要關注,如此歷來對於使用來說降低了對使用對象認識的難度。
2、(最終要的理由)讓程序設計者可以更動class內部運作方式,而無須擔心波及到客戶端程序。

5、java的「訪問許可權修飾符」賦予classes開發者極具有價值的控制能力。身為classes開發者,如果你的任何改變可以完全不幹擾你的使用者,
你便可以安心改變你的底層實現,因為客戶端程序員無法訪問class的這一部分。
通過今天學習訪問許可權的問題了解到,介面或者抽象等等策略所謂的「實現隱藏」其根本原因並不是說為了隱藏實現的代碼和思路,而是降低使用者的使用難度,以及從維護角度來說可見范圍的控制給程序維護帶來了極大的安全性。

閱讀全文

與每個編譯單元就是一個相關的資料

熱點內容
pthreads安裝linux 瀏覽:272
androidfragment嵌套 瀏覽:274
單片機在線升級 瀏覽:104
程序員吃包子視頻 瀏覽:808
安卓為什麼不封app 瀏覽:465
電車租車app叫什麼 瀏覽:727
編程員英文 瀏覽:266
負載均衡伺服器如何部署項目 瀏覽:528
迷你世界的程序員怎麼獲取 瀏覽:366
洗澡楊絳pdf 瀏覽:218
程序員的詩詞大會 瀏覽:728
怎麼修改建行app名 瀏覽:814
雲終端怎麼加密 瀏覽:610
linuxxserver啟動 瀏覽:97
迅雷把文件分解加密 瀏覽:89
好玩友app怎麼查找游戲 瀏覽:870
互聯網公司java 瀏覽:523
為什麼能上網卻提示找不到伺服器 瀏覽:584
基於單片機的多功能門鈴 瀏覽:956
南昌微型往復活塞空氣壓縮機 瀏覽:143