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导包的区别相关推荐
- python 如何将虚拟环境的项目的所有.py文件的import导包汇总到requirements.txt文件 (pipreqs)
参考文章: pipreqs - Generate requirements.txt file for any project based on imports 作用: 能快速汇总所需安装的包然后批量安 ...
- 用C语言打开文件的几种方式及区别
文件使用方式 含义 如果指定的文件不存在 r(只读) 读取一个已经存在的文本文件 出错 w(只写) 打开一个文本文件,输出数据,若文件存在则文件长度清为0,即该文件内容会消失 建立新文件 a (追加) ...
- java程序设计 c语言_C语言和Java编程有什么区别?
C语言和Java编程有什么区别?Java从根本上说是c之后的一种改进语言,纯面向对象的一种编程语言(当然比起Ruby还是差一点),有了C语言的基础固然对学习Java有帮助,因为在某种程度上Java和C ...
- minecraft java文件_Minecraft Java 数据包教程(一)
数据包简介 数据包是一个可以让我们自定义Minecraft部分玩法的东西,具体包括以下内容:配方 函数 进度 战利品表 谓词(战利品表条件) 维度 结构 标签 在这个教程里面,我将重点关注配方.函数与 ...
- java导包及注意事项_STS导项目的顺序及注意事项
1.本地SVN与编辑器sts的svn版本不一致,所以先从SVN上下载项目 2.然后在delete删除项目,但是不删除盘里文件, 3.然后再从工作空间找到项目代码放置位置, 4.再复制工作空间位置,进行 ...
- 快速排序 java导包_排序算法-快速排序(Java实现)
上篇我们讲了冒泡排序,这次我们讲它的升级版快速排序,"快速",一看就是个好算法~ 快速排序(QuickSort)是啥? 我们先看下百度百科的介绍快速排序(Quicksort)是对冒 ...
- idea 关于自动导包的设置
如上图标注 1 和 2 所示,默认 IntelliJ IDEA 是没有开启自动 import 包的功能. 勾选标注 1 选项,IntelliJ IDEA 将在我们书写代码的时候自动帮我们优化导入的包 ...
- java 内部类 返回值_Java基础第10天+形式参数和返回值的问题、包、导包、权限修饰符、常见的修饰符、内部类(局部内部类,成员内部类,匿名内部类)...
1:形式参数和返回值的问题(理解) (1)形式参数: 类名:需要该类的对象 抽象类名:需要该类的子类对象 接口名:需要该接口的实现类对象 (2)返回值类型: 类名:返回的是该类的对象 抽象类名:返回的 ...
- python文件转换成jar包_Python一键转Jar包,Java调用Python新姿势!
粉丝朋友们,不知道大家看故事看腻了没(要是没腻可一定留言告诉我^_^),今天这篇文章换换口味,正经的来写写技术文.言归正传,咱们开始吧! 今天的这篇文章,聊一个轩辕君之前工作中遇到的需求:如何在Jav ...
最新文章
- css样式中关于li的横向排列
- 美国司法部将对大型科技公司展开广泛、新的反垄断审查
- 华为手表用鸿蒙了吗,华为鸿蒙都2.0了,手机还不能用吗?
- 有赞 Flink 实时任务资源优化探索与实践
- 深度学习 训练吃显卡_在深度学习中喂饱GPU
- 【形式语言与自动机】有限状态机
- 网站设置404错误页
- C语言实现文件类型统计程序,C语言实现文件类型统计函数
- String 尺取法
- 证明华为模拟器Wvrp5.2a的二三层可以通信的trunk实验
- mysql5.7登陆时access denied解决办法
- matlab 中曲线颜色,matlab曲线颜色样式设置
- en结尾的单词_形容词加en前后缀变动词的英语单词
- JAVA Swing万年历
- AddressBook通讯录右边索引条
- 5G协议 基本架构 专有名词简称和缩写
- rstudio线性回归_R语言线性回归
- ui设计培训课程是哪些
- 调试多线程 查死锁的bug gcore命令 gdb对多线程的调试 gcore pstack 调试常用命令...
- 讯飞——机器翻译,iOS的webapi接入教程
热门文章
- python(20)之读写文件
- 新手博客,开博立言_Youcans2021
- linux怎么删web应用程序错误,Ubuntu 20.04将删除Amazon Web应用程序,但用户可另行安装...
- 无法打开文件“python35_d.lib”
- 【文章】一副对联,便写尽了人生
- scrapy框架的日志等级和请求传参
- 4-数组、指针与字符串1.4-动态内存分配
- python-变量操作-字符串
- XDOJ-1002-小W的塔防(dp)
- 程序一旦发觉写得不理想,那就得重构它