javac與java
1. java和C + +有什麼區別
差別很大,是典型面向過程的編程語言,java是完全面向對象的編程語言。
2. Java和C的區別
Java的特點:
1、Java語言是簡單的。Java語言的語法與C語言和C 語言很接近,使得大多數程序員很容易學習和使用。另一方面,Java丟棄了C 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。特別地,Java語言不使用指針,並提供了自動的廢料收集,使得程序員不必為內存管理而擔憂。
2、Java語言是一個面向對象的。Java語言提供類、介面和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持介面之間的多繼承,並支持類與介面之間的實現機制(關鍵字為implements)。
Java語言全面支持動態綁定,而C 語言只對虛函數使用動態綁定。總之,Java語言是一個純的面向對象程序設計語言。
3、Java語言是分布式的。Java語言支持Internet應用的開發,在基本的Java應用編程介面中有一個網路應用編程介面(java.net),它提供了用於網路應用編程的類庫,包括URL、URLConnection、Socket、 ServerSocket等。
Java的RMI(遠程方法激活)機制也是開發分布式應用的重要手段。
C語言的特點:
1. 簡潔緊湊、靈活方便。C語言一共只有32個關鍵字,9種控制語句,程序書寫自由,主要用小寫字母表示。它把高級語言的基本結構和語句與低級語言的實用性結合起來。 C 語言可以象匯編語言一樣對位、位元組和地址進行操作, 而這三者是計算機最基本的工作單元。
2. 運算符豐富。C的運算符包含的范圍很廣泛,共有種34個運算符。C語言把括弧、強制類型轉換等都作為運算符處理。從而使C的運算類型極其豐富表達式類型多樣化,靈活使用各種運算符可以實現在其它高級語言中難以實現的運算。
3. 數據結構豐富。C的數據類型有:整型、實型、字元型、數組類型、指針類型、結構體類型、共用體類型等。能用來實現各種復雜的數據類型的運算。並引入了指針概念,使程序效率更高。另外C語言具有強大的圖形功能, 支持多種顯示器和驅動器。且計算功能、邏輯判斷功能強大。
3. javac與java的區別
javac用來編譯復java文件,制java用來執行。
1,javac命令用來編譯java文件,例如編寫一個Test.java文件,使用javac Test.java可以執行編譯操作,將生成一個Test.class文件。
2,java命令可以執行生成的class文件,使用java Test可以執行編寫的代碼。
4. 請詳細寫出Javac和Java兩個命令的使用方式
javaac和java兩個命令的使用詳解:
一、javac命令
javac 用於編譯Java文件,格式為:
java [options] [sourcefiles] [@files]
其中:
options:命令行選項;
sourcefiles:一個或多個要編譯的源文件;
@files:一個或多個對源文件進行列表的文件,有時候要編譯的文件很多,一個個敲命令會顯得很長,也不方便修改,可以把要編譯的源文件列在文件中,在文件名前加@,這樣就可以對多個文件進行編譯,對編譯一個工程很有用,方便,省事。
有幾個比較重要的選項:
-d 用於指定編譯成的class文件的存放位置,預設情況下不指定class文件的存放目錄,編譯的class文件將和源文件在同一目錄下;
-classpath 可以簡寫成-cp,用於搜索編譯所需的class文件,指出編譯所用到的class文件的位置,如jar、zip或者其他包含class文件的目錄,指定該選項會覆蓋CLASSPATH的設定;
-sourcepath用於搜索編譯所需的源文件(即java文件),指定要搜索的源文件的位置,如jar、zip或其他包含java文件的目錄;
需要注意windows下和linux下文件路徑分隔符和文件列表(即-classpath和-sourcepath指定的文件)分隔符的區別:
windows下文件路徑分隔符用 \ ,文件列表分隔符用分號 ;
linux下文件路徑分隔符用 / ,文件列表分隔符用冒號 :
二、java命令
java 用於執行程序,格式如下:
java [options] classfile
options:命令行選項,一般用於 -classpath 指定要執行的文件所在的位置以及需要用到的類路徑,包括jar、zip和class文件目錄,會覆蓋CLASSPATH的設定
三、腳本
如果要敲的命令很長,每次要編譯運行的時候都要重新敲一遍,這是一件很痛苦的事情,所以用腳本可以大大方便你的工作量。在linux下用shell腳本,windows下用bat批處理程序。因為是在linux下,我這里只是簡單介紹一下shell,關於bat批處理程序的語法自己網路一下,不難。
1. 開頭
linux有很多不同的shell,通常使用bash(bourne again shell),程序必須以下面的行開始:
#!/bin/sh
#!用來告訴系統用後面的參數來執行程序,這里使用的是/bin/sh
要使你的腳本能夠執行,還必須讓這個文件有可執行許可權,使用下面命令更改文件許可權:
chmod +x filename
2. 注釋
以#開始的句子表示注釋,一直到這行結束,多寫注釋有利於以後重新看的時候知道自己在做什麼
5. java 和javac的區別
在DOS界面,安裝完JAVA且PATH了安裝路徑就會有這兩個方法,其中JAVAC命令是把寫好的。專txt文件編譯屬成。java文件。C是CREADT的意思。當想執行java文件的時候就要用java命令了。
6. java 和javac的區別
javac用來編譯java文件,java用來執行。
1,javac命令用來編譯java文件,例如編寫版一個Test.java文件,使用javac Test.java可以執行編譯操作,將生成權一個Test.class文件。
2,java命令可以執行生成的class文件,使用java Test可以執行編寫的代碼。
7. javac和java 有什麼區別和聯系
javac 編譯.java文件成為.class文件
java 運行.class 程序
8. javac和javaw有什麼區別,是不是一個性質的啊
不是的,java.exe和javaw是一樣的,都是用來運行java程序的,前者會打開命令行窗口,後者沒有。
而javac是java的編譯命令工具,用來將.java編譯成.class
9. javac與java的區別是什麼
javac 可以將java源文件編譯為class位元組碼文件
如 javac HelloWorld.java
運行javac命令後,如果成功編譯沒有錯誤的話,會出現一個HelloWorld.class的文回件。
java 可以運行class位元組答碼文件
如 java HelloWorld
注意java命令後面不要加.class
10. Java和C語言有什麼區別
這個問題很多人問我了,你可以在網路知道上搜索,有很多都是我敲的,並且都是最佳答案。今天我就再幫一次兄弟,不過回答保證更為精準。
這個C語言是面向過程語言,C++是混合型語言,java是面向對象語言。很多書中吧C++作為面向對象語言來講,但是實際上C++不是純種的面向對象語言。java是面向對象的代表。如果你聽說過C#的話,那麼C#是面向對象的終結。
當然這些對於初學者來說不太明了什麼是面向對象、什麼是面向過程。而我在這里解釋也會讓你更加懵懂。所以撇開什麼是面向對象什麼是面向過程,單單介紹他們實際應用區別:
C是一門非常干練的語言,一切採用函數的形式完成,你可以把所有需要的功能採用函數的形式完成,然後在主函數main中調用。學起來容易,幾乎用三兩天就可以學會。一般用來教學學習演算法,數據結構等。同樣這也造成了它的應用范圍局限在小程序中,只能是針對小規模的東西開發:比如DOS程序,嵌入式開發等。
C++是在C語言的基礎上擴展的,所以一般C++會兼容C語言庫。C++是因為用C語言開發項目中會遇到很多團隊合作問題,導致團隊的工作效率下降。在此基礎上迫切需要降低軟體開發團隊成員之間彼此的干擾性,使得每個工程人員的代碼竟可能不影響他人。最後C++便應用而生了。C++主要是其中集成了類地概念,可以將所有的東西封裝在類中,類中的私有成員不可被別人訪問,這樣就有效地解決了代碼互干擾性。
java是汲取C++的長處而誕生的,這個語言採用完全面向對象的概念,將所有的功能封裝在類中,而不像C++部分封裝。由於java採用跨平台性,使得更容易被移植,在互聯網要求多終端能夠互相訪問成為可能,這便形成了java平台今日的盛況,在互聯網方面幾乎無人可敵。
學習難易程度來講C++非常難,即使有5年工作經驗的C++工程師也未必能夠熟練應用C++,C語言易掌握,但是應用起來難度不下於C++,因為C語言幾乎是對硬體直接寫代碼,一般來說會使得代碼非常龐大,增加了開發人員的工作量。java因為封裝了很多功能,所以幾乎開發效率相當高。