c語言javac++的區別,c語言 java c++區別

本文目錄一覽:

問javac java jdk jdbc的區別

javac 是java程序編譯器,就是一個普通的可執行文件

java 是一門開發語言。。

JDK 是整個Java的核心,包括了Java運行環境(Java Runtime Envirnment),一堆Java工具和Java基礎的類庫(rt.jar)。

JDBC, 全稱為Java DataBase Connectivity standard, 它是一個面向對象的應用程序介面(API), 通過它可訪問各類關係資料庫。JDBC也是java核心類庫的一部分。

回答完畢,滿意請採納,謝謝。

javac和java 有什麼區別和聯繫?

javac和java命令行中的-classpath選項

這是個很基礎的問題,但是因為基本上都是用現有的IDE工具 來開發java程序,所以很少有人意識到這一點。

javac

-classpath,設定要搜索類的路徑,可以是目錄,jar文件,zip文件(裡面都是class文件),會覆蓋掉所有在CLASSPATH裡面的設定。

-sourcepath, 設定要搜索編譯所需java 文件的路徑,可以是目錄,jar文件,zip文件(裡面都是java文件)。

所以一個完整的javac命令行應該是這樣的,

假設abc.java在路徑c:\src裡面,在任何的目錄的都可以執行以下命令來編譯。

javac -classpath c:\classes;c:\jar\abc.jar;c:\zip\abc.zip -sourcepath c:\source\project1\src;c:\source\project2 \lib\src.jar;c:\source\project3\lib\src.zip c:\src\abc.java

表示編譯需要c:\classed下面的class文件,c:\jar\abc.jar裡面的class文件,c:\zip\abc.zip裡面的class文件

還需要c:\source\project1\src下面的源文件,c:\source\project2 \lib\src.jar裡面的源文件,c:\source\project3\lib\src.zip裡面的源文件,

注意:jar,zip裡面的源文件不會有什麼改動,目錄下的源文件,有可能會被重新編譯。

java

-classpath, 設定要搜索的類的路徑,可以是目錄,jar文件,zip文件(裡面都是class文件),會覆蓋掉所有的CLASSPATH的設定。

由於所要執行的類也是要搜索的類的一部分,所以一定要把這個類的路徑也放到-classpath的設置裡面。

表現在,在要執行的類的路徑裡面執行java時,一定要添加上點號(.)標示本目錄也要搜索。

假設abc.class在路徑c:\src裡面

可以在任何路徑下執行以下命令

java -classpath c:\classes;c:\jar\abc.jar;c:\zip\abc.zip;c:\src abc

問題:如果main.class屬於c:\jar\abc.jar,並且在com.cnblogs.jeffchen這個包里,那麼執行java -classpath c:\classes;c:\jar\abc.jar;c:\zip\abc.zip;com.cnblogs.jeffchen.main即可, 但是如果classpath中包含多個jar包呢?並且其他jar包中也有com.cnblogs.jeffchen會發生什麼情況?錯誤?

在windows下,

文件路徑的分割符為反斜杠 \

類或者java文件列表的分割符為分號 ;

在linux下

文件路徑的分隔符位斜杠 /

類或者java文件列表的分隔符為冒號 :

一個linux下編譯和運行的例子

/usr/local/java/bin/javac -classpath /tmp/javatest/lib/mail-1.3.3.jar -d /tmp/javatest/bin/ /tmp/javatest/src/jp/co/realseed/Capability.java

/usr/local/java/bin/java -classpath /tmp/javatest/lib/mail-1.3.3.jar:/tmp/javatest/bin/ jp.co.realseed.Capability

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因為封裝了很多功能,所以幾乎開發效率相當高。

javac與java的區別

javac用來編譯java文件,java用來執行。

1,javac命令用來編譯java文件,例如編寫一個Test.java文件,使用javac Test.java可以執行編譯操作,將生成一個Test.class文件。

2,java命令可以執行生成的class文件,使用java Test可以執行編寫的代碼。

javac與java的區別是什麼?

javac 可以將java源文件編譯為class位元組碼文件\x0d\x0a如 javac HelloWorld.java\x0d\x0a\x0d\x0a運行javac命令後,如果成功編譯沒有錯誤的話,會出現一個HelloWorld.class的文件。\x0d\x0a\x0d\x0ajava 可以運行class位元組碼文件\x0d\x0a如 java HelloWorld\x0d\x0a\x0d\x0a注意java命令後面不要加.class

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/199339.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-05 10:21
下一篇 2024-12-05 10:21

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Python中new和init的區別

    new和init都是Python中常用的魔法方法,它們分別負責對象的創建和初始化,本文將從多個角度詳細闡述它們的區別。 一、創建對象 new方法是用來創建一個對象的,它是一個類級別…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29

發表回復

登錄後才能評論