day03_1_idea教程
# idea使用教程
# 一、idea相关概念介绍
## 1.1 IDE概念介绍
集成开发环境(IDE,Integrated Development Environment)是用于提供程序开发环境的应用程序,一般包括代码编译器,编译器,调试器和图形用户界面等工具,集成了代码编写功能,分析功能,编译功能,调试功能等一体化的开发软件服务套。
## 1.2 JetBrains公司介绍
JetBrains是一家捷克的软件公司,该公司位于捷克的布拉格,并在俄罗斯的圣彼得堡及美国麻州波士顿都设有办公室、该公司为人所熟知的产品是java编程语言开发撰写的集成开发环境:IntelliJ IDEA。公司旗下还有其他产品、比如:
- WebStorm:用于开发 JavaScript、HTML5、CSS3 等前端技术;
- PyCharm:用于开发 python
- PhpStorm:用于开发 PHP
- RubyMine:用于开发 Ruby/Rails`
- AppCode:用于开发 Objective - C/Swift
- CLion:用于开发 C/C++
- DataGrip:用于开发数据库和 SQL
- Rider:用于开发.NET
- GoLand:用于开发 Go
## 1.3 IntelliJ IDEA介绍
IDEA全称IntelliJ IDEA,是用于java语言开发的集成环境IDE,也可用于其他语言,IntelliJ在业界被公认为最好用的java开发工具之一,**尤其在智能代码助手,代码自动提示、重构、J2EE支持、Ant、Junit、CVS整合、代码审查、创新的GUI设计等方面的功能可以说是超常的。**
# 二、idea下载与安装
首先我们先学习idea的下载与安装
## 2.1 idea下载
【第一步】从idea官网https://www.jetbrains.com/idea/下载软件
【第二步】点击download进行下载
【第三步】点击Other versions 选择网上评价比较好用不卡的版本
【第四步】下载指定版本idea
## 2.2 安装准备
硬件要求
* **最低配置**:内存 2GB,硬盘 1.5 GB
* **建议配置**:内存`8G`以上,CPU 最好i5以上
软件要求
* jdk 8
## 2.3 idea安装
【第一步】双击安装程序
【第二步】省略 ...... 下一步
【第三步】不勾选任何选框
【第四步】软件所在目录名字默认即可
## 2.4 第一次启动项目
【第一步】启动软件→不导入任何配置→ok
【第二步】试用 idea
【第三步】新建项目→New Project
新建java 项目
不勾选模板
设置项目名字与项目存放位置
关闭欢迎界面
项目目录介绍
【第四步】创建包
src:src是存放源码 .java 文件的目录,idea会把src当作源码的根路径来处理。
package:包,即在src目录中创建的文件夹;当 .java 文件特别多时,为了更好的阅读java代码,我们会把java代码放到不同包下;包路径就是包相对src的路径,需要在java代码第一行声明出来,jvm才能解析到。
【第五步】创建类
【第六步】运行
## 2.5 idea破解
【第一步】新建一个java项目【已完成】
【第二步】将破解jar程序拖入idea窗口中
【第三步】检查破解程序是否执行成功
【第四步】设置每次启动idea都重置试用期为第一天
到此idea就能无限使用了
## 2.6 Untrusted Server's Certificate 弹窗问题
打开idea总会弹出如下窗口,使用idea会很不方便
解决办法如下:
【第一步】选择file->setting设置
【第二步】勾选 接收不信任的证书
## 2.7 idea卸载
控制面板→卸载→注意:删除以下目录
## 2.8 小结
1. idea的下载
2. idea的安装
3. 第一次创建项目
4. idea破解
5. 解决弹框问题
# 三、 Project 与 Module 操作
本章节我们主要讲解 idea 窗口 、 项目与模块的概念、 模块的添加与删除操作。
## 3.1 idea 窗口介绍
首先将idea的常用窗口全部设置出来
接下来我们来介绍idea的窗口,如下图所示,以下是几个导航按钮的说明
## 3.2 Project 与 Module 概念
在 Eclipse 中我们有 Workspace(工作空间)和 Project(工程)的概念,在 IDEA 中只有 Project(工程)和 Module(模块)的概念。这里的对应关系为:
实际上module还有更深层的含义,这个我们到后面学习maven工程的时候详细说明。
## 3.3 创建空项目
在idea中空项目和eclipse中workspace的用途类似,用以存放模块;创建空项目过程如下
## 3.4 添加模块
这两个选项一个是当前项目的设置 ,一个是当前项目结构
点击项目结构→添加模块
接下来设置模块
显示如下结果表示添加模块完成
编写代码运行测试 ...
## 3.5 删除模块
选中模块→Remove Module
## 3.6 恢复模块
点击项目结构→导入模块
选择要导入的模块
根据导入源码创建模块
然后下一步 ... 下一步 重写 模块
设置编译级别 jdk 8, 点击应用 ,点击ok
## 3.7 小节
1. 打开项目结构
2. 添加模块
3. 删除模块
4. 恢复模块
# 四、idea常用设置
## 4.1 当前项目设置
当先项目设置主要包括、主题设置、导包设置、忽略大小写提示、设置字体、文档注释设置、项目编码、自动编译、以及序列化版本设置
首先我们先进入当前项目设置界面,如下所示
当前项目的设置界面如下
### 4.1.1 设置主题
设置界面→外观与行为→主题
### 4.1.2 导包设置
编写代码时,导入包可以有两种方式
* 手动导包:alt+enter
* 自动导包
自动导包→editor→General→Auto Import
### 4.1.3 忽略大小写提示
写代码的时候可以通过以下设置完成忽略大小写提示
Editor → General → Code Completion → 取消勾选Match case
### 4.1.4 设置字体
通过如下设置完成字体设置、字体大小、行间距设置
Editor → Font
### 4.1.5 类文档注释
我们写代码的时候,经常在类的头部编写文档注释,注释内容如下:
~~~java
/**
* @Auther: 胖叔讲java
* @Date: ${DATE} - ${MONTH} - ${DAY} - ${TIME}
* @Decsription: ${PACKAGE_NAME}
* @version: 1.0
*/
~~~
我们可以将这些基本信息添加到设置中,在创建类的时候自动生成
Editor → File and Code Templates → Includes → File Header
### 4.1.6 编码格式
现在开发普遍都使用utf-8编码,具体设置如下:
Editor → File Encodings
### 4.1.7 设置自动编译
每次写完代码自动完成编译,配置如下
Build Execution Deployment → Compiler
### 4.1.8 序列化版本号
当类实现Serializable借口时,我们希望自动补充序列化id值,勾选如下信息自动补充
Editor → Inspections → 搜索序列化 → 勾选让类具有序列化id
### 4.1.9 省电模式
当设置省电模式以后,所有的提示信息,快捷键功能都会失效。如果idea功能失效了,请检查是否设置了省电模式。
### 4.1.10 小节
当前项目的常用设置如下:(必须牢记掌握)
1. 编码设置
2. 自动编译
3. 自动导包
4. 忽略大小写提示
5. 字体设置
6. 序列化版本号
## 4.2 全局设置
首先,我们打开系统设置,取消启动idea自动打开最近运行的项目
Appearance & Behavior → System Settings → 取消勾选 Reopen projects on startup
接下来,关闭项目,重启idea,进入如下界面,就不会自动打开项目了
最后进入全局设置
### 4.2.1 编码设置
打开全局设置→Editor → File Encodings
### 4.2.2 自动编译
全局设置→Build Execution Deployment → Compiler
### 4.2.3 自动导包
自动导包→editor→General→Auto Import
### 4.2.4 忽略大小写提示
Editor → General → Code Completion → 取消勾选Match case
### 4.2.5 字体设置
Editor → Font
### 4.2.6 序列化版本号设置
Editor → Inspections → 搜索序列化 → 勾选让类具有序列化id
### 4.2.7 小节
常用全局设置如下:(必须牢记掌握)
1. 编码设置
2. 自动编译
3. 自动导包
4. 忽略大小写提示
5. 字体设置
6. 序列化版本号
## 4.3 小节
常用设置如下
1. 编码设置
2. 自动编译
3. 自动导包
4. 忽略大小写提示
5. 字体设置
6. 序列化版本号
# 五、idea常用快捷键
idea有很多很多快捷键,全记忆下来并不现实,这里总结几个最常用的快捷键如下:
* main方法:psvm
* 输出语句:sout
* 搜索类:ctrl+n
* 替换:ctrl+r
* 生成代码:alt+insert(如构造方法、getter、setter、hashCode、equals、toString)
* 百能快捷键:alt+Enter(导包,生成变量等)
* 单行注释或多行注释:ctrl+/或ctrl+shifit+/
* 代码块包围:try-catch,if,while等ctrl+alt+t
* 代码一层一层调用快捷键:
* 点击源码:ctrl+鼠标悬浮在代码上+点击即可
* 回退操作:ctrl+alt+向左箭头
* 前进操作:ctrl+alt+向右箭头
* 查看类结构:ctrl+h
# 六、idea代码模板
配置一些常用代码的字母缩写,例如输入psvm生成main方法,这样的模板设置就是代码模板。
代码模板分类
1. Live Templates:可以做用户的个性化定制
2. Postfix Completion:只能用,不能改
## 6.1 修改代码模板
修改现有模板操作如下
Editor → Live Templates → Java → 选择快捷键 → 修改文本
## 6.2 创建代码模板
【第一步】创建模板组myTemplate
Live Templates → + → Template Group → 输入模板名 回车
【第二步】在myTemplate组中创建模板
Live Templates → 选中模板组myTemplate → + → Live Template → Abbreviation快捷键 → Template Text 模板内容 → 关联语言 → apply → ok
# 七、idea的断点调试
建议学习完流程控制在学习debug
## 7.1 Debug的优化设
设置debug的连接方式、默认收socket。Shared memory是windows的特有的一个属性,一般在windows系统下建议使用此设置,内存占用少,具体操作如下:
## 7.2 常用断点调试快捷键
常用断点快捷键如下:
## 7.3 断点调试之条件判断
当我们测试for循环的时候,如果执行10000次循环,我们就要点1万次下一步,不现实,我们可以右键断点输入条件表达式,在指定的条件下执行断点。
【第一步】在for循环中设置断点
【第二步】鼠标右键点击断点,输入条件表达式
## 7.4 断点调试之查看表达式
当断点执行到某一步的时候,我们可以通过右键点击Evaluate Expression 执行查看表达式,在搜索框输入自己想查看的变量值,如下所示:
右键→ evaluate Expression → 输入变量
# 八 、总结
1. idea 安装
2. idea 全局配置
3. idea 快捷键
4. idea debug
day03_1_idea教程的更多相关文章
- Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求
上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...
- Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数
上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...
- Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数
上一篇:Angular2入门系列教程-服务 上一篇文章我们将Angular2的数据服务分离出来,学习了Angular2的依赖注入,这篇文章我们将要学习Angualr2的路由 为了编写样式方便,我们这篇 ...
- Angular2入门系列教程4-服务
上一篇文章 Angular2入门系列教程-多个组件,主从关系 在编程中,我们通常会将数据提供单独分离出来,以免在编写程序的过程中反复复制粘贴数据请求的代码 Angular2中提供了依赖注入的概念,使得 ...
- Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境
一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...
- wepack+sass+vue 入门教程(三)
十一.安装sass文件转换为css需要的相关依赖包 npm install --save-dev sass-loader style-loader css-loader loader的作用是辅助web ...
- wepack+sass+vue 入门教程(二)
六.新建webpack配置文件 webpack.config.js 文件整体框架内容如下,后续会详细说明每个配置项的配置 webpack.config.js直接放在项目demo目录下 module.e ...
- wepack+sass+vue 入门教程(一)
一.安装node.js node.js是基础,必须先安装.而且最新版的node.js,已经集成了npm. 下载地址 node安装,一路按默认即可. 二.全局安装webpack npm install ...
- Virtual Box配置CentOS7网络(图文教程)
之前很多次安装CentOS7虚拟机,每次配置网络在网上找教程,今天总结一下,全图文配置,方便以后查看. Virtual Box可选的网络接入方式包括: NAT 网络地址转换模式(NAT,Network ...
随机推荐
- C++实现矩阵类和向量类
C++期末作业内容,写完之后觉得过于臃肿,又重新搞了个新的.新的当作业交,旧的拿来给同学参考. [问题描述]请仿照复数类,设计一个矩阵类,设计矩阵类的构成元素 1.编写构造函数完成初始化 2.编写成员 ...
- 【译】defer-panic-and-recover
Go 有通用的控制流程:if,for,switch,goto.它也有go语句用于让代码运行在单独的协程.这里我将讨论一些不常见的问题:defer,panic 和 recover. defer语句将函数 ...
- Docker的基本原理及使用
Docker 安装 https://docs.docker.com/engine/install/ubuntu/ 应用场景 Web 应用的自动化打包和发布. 自动化测试和持续集成.发布. 在服务型环境 ...
- 思科,华为l2tp组网,家庭宽带,公司内网数据分离
拓扑 简介 办公网使用专线接入,拥有固定IP地址,网络出口使用防火墙做NAT,下联交换机接入服务器,办公电脑等,旁挂思科路由器做L2TP LNS 家庭宽带使用ADSL线路,华为路由器做拨号设备与DHC ...
- CSAPP 之 CacheLab 详解
前言 本篇博客将会介绍 CSAPP 之 CacheLab 的解题过程,分为 Part A 和 Part B 两个部分,其中 Part A 要求使用代码模拟一个高速缓存存储器,Part B 要求优化矩阵 ...
- 106_Power Pivot之HR入离调转、在职、离职率相关指标
博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 之前有帮公司HR做了些员工入离调转.在职.人工成本分析等(体量:4000人左右).在和其他朋友交流的时候得知,貌 ...
- 一条更新SQL的内部执行及日志模块
一条更新SQL的内部执行 学习MySQL实战45讲,非常推荐学 还是老图: 上文复习 在执行查询语句的时候,会执行连接器(总要连上才能搞事情),然后去查询缓存(MySQL8+删除了),有数据返回,没数 ...
- 深入解读SQL的聚集函数
摘要:本文从基本聚集操作入手,介绍常用的SQL语法,以及一些扩展的聚集功能,同时会讲到在GaussDB(DWS)里聚集相关的一些优化思路. 本文分享自华为云社区<GaussDB(DWS) SQL ...
- Java_Scanner的使用
目录 Scanner对象 scanner.next()和scanner.nextln()的区别 scanner.hasNext()和scanner.hasNextln() Scanner拓展 视频课程 ...
- 【freertos】011-信号量、互斥量及优先级继承机制源码分析
目录 前言 11.1 任务同步 11.2 信号量概念 11.3 二值信号量 11.3.1 二值信号量概念 11.3.2 优先级翻转 11.3.3 二值信号量运作机制 11.4 计数信号量 11.4.1 ...