c语言引入文件和java导包的区别
生活随笔
收集整理的這篇文章主要介紹了
c语言引入文件和java导包的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
預處理--編譯--匯編--鏈接
- 預處理:用于將所有#include頭文件及#define等宏定義替換成真正的內容,預處理后的得到的仍然是文本文件,但體積會大。
? ? ? ? ? ? 1.將頭文件中的內容(源文件之外的文件)插入到源文件中
? ? ? ? ? ? 2.進行了宏替換的過程,定義和替換了由#define指令定義的符號
? ? ? ? ? ? 3.刪除注釋的過程,注釋不會帶到編譯階段
? ? ? ? ? ?4.條件編譯
- 編譯:將預處理之后的程序轉換成特定匯編代碼的過程 ,這里的編譯不是指從源文件到二進制程序的全過程
- 匯編:匯編過程將上一步的匯編代碼轉換成機器碼,這一步產生的文件叫目標文件,是二進制格式。
- 鏈接:鏈接過程將多個目標文件以及所需的庫文件(.so等)鏈接成最終的可執行文件? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
2.頭文件<>""區別
- <>:尖括號<>表示這個文件,編譯器會從系統配置的庫環境中去尋找
- "":雙引號表示這個文件是用戶提供的頭文件編譯器會從當前項目的當前目錄文件夾中尋找,如果找不到就會從系統默認的庫環境中尋找
?
在java是面向對象的語言,具有類的概念,當我們在一個類中的函數需要調用其他類中的函數。我們只需要引入其他類的文件包名字即可在java中我們也成為導包,通過import關鍵字來實現。如下就是一個舉例。
例如:
package com.atguigu.springcloud.controller;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController;import com.atguigu.springcloud.entities.Dept; import com.atguigu.springcloud.service.DeptService; import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;@RestController public class DeptController {@Autowiredprivate DeptService service ;@RequestMapping(value = "/dept/get/{id}", method = RequestMethod.GET)//一旦調用服務方法失敗并拋出了錯誤信息后,會自動調用@HystrixCommand標注好的fallbackMethod調用類中的指定方法@HystrixCommand(fallbackMethod = "processHystrix_Get")public Dept get(@PathVariable("id") Long id) {Dept dept = this.service.get(id);if (null == dept) {throw new RuntimeException("該ID:" + id + "沒有沒有對應的信息");}return dept;}public Dept processHystrix_Get(@PathVariable("id") Long id) {return new Dept().setDeptno(id).setDname("該ID:" + id + "沒有沒有對應的信息,null--@HystrixCommand").setDb_source("no this database in MySQL");} }函數的調用:
我們可以通過創建類的對象來調用類的函數,這里我們使用了@Autowired注解來幫助我們創建了DeptService 的service對象。
@Autowired private DeptService service ;?
?
總結
以上是生活随笔為你收集整理的c语言引入文件和java导包的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大数运算(7)——大数阶乘(求阶乘)
- 下一篇: 大数运算(8)——大数幂运算