Java基础(第一期):IDEA的下载和安装(步骤图) 项目结构的介绍 项目、模块、类的创建。第一个代码的实现
Java基础专栏:
- Java基础第一期
- 下一期:Java基础第二期
文章目录
- IDEA
- 1.1 IDEA概述
- 1.2 IDEA的下载和安装
- 1.2.1 下载
- 1.2.2 安装
- 1.3 IDEA中层级结构介绍
- 1.3.1 结构分类
- 1.3.2 结构介绍
- project(项目、工程)
- module(模块)
- package(包)
- class(类)
- 1.3.3 小结
- 1.4 IDEA中的第一个代码
- 1.4.1 操作步骤
- 1.4.2 分步图解
- 1.5 IDEA中类的相关操作
- 1.5.1 类的相关操作
- 1.5.2 新建类文件
- 1.5.3 修改类名
- 1.5.4 删除类文件
- 1.6 IDEA中模块的相关操作
- 1.6.1 模块的相关操作
- 1.6.2 新建模块
- 1.6.3 删除模块
- 1.6.4 修改模块
- 1.6.5 导入模块
- 1.7 IDEA中项目的相关操作
- 1.7.1 项目的相关操作
- 1.7.2 关闭项目
- 1.7.3 打开项目
- 1.7.4 修改项目
- 8.7.5 新建项目
阿伟手把手教你:
IDEA
1.1 IDEA概述
IDEA全称IntelliJ IDEA,是用于Java语言开发的集成环境,它是业界公认的目前用于Java程序开发最好的工具。
集成环境:
把代码编写,编译,执行,调试等多种功能综合到一起的开发工具。
1.2 IDEA的下载和安装
1.2.1 下载
可以到官方网站自行下载,网址为:https://www.jetbrains.com/idea
1、打开官网:点击开发者工具选择intelliJ IDEA下载
2、点击下载:
1.2.2 安装
- 双击安装包。
- 点击next,准备安装
-
点击Browse修改安装路径。
修改完毕点击next
-
勾选64-bit launcher。表示在桌面新建一个64位的快捷方式。
其他的不要勾选。
点击next。
- 点击Install,准备安装。
-
等进度条读取完毕之后,会有最终界面提示。
点击finish即可。
-
第一次启动会询问,是否导入一些设置。
选择第二个不导入,保持默认设置,再点击OK。
-
选择背景主题
左边是黑色背景。右边是白色背景。
这个可以根据自己的喜好来选择。
选择完毕点击右下角的next
-
在本界面让我们购买idea。
因为我们是学习阶段,所以可以使用免费使用30天。
点击第一排第二个。Evaluate for free
- 点击蓝色的Evaluate,就可以开始免费试用30天了。
-
当看到这个界面,就表示idea已经成功安装完毕
可以点击右上角关闭。
1.3 IDEA中层级结构介绍
1.3.1 结构分类
- project(项目、工程)
- module(模块)
- package(包)
- class(类)
1.3.2 结构介绍
为了让大家更好的吸收,package这一层级,我们后面再学习,先学习最基础的project、module、class。
project(项目、工程)
淘宝、京东、黑马程序员网站都属于一个个项目,IDEA中就是一个个的Project。
module(模块)
在一个项目中,可以存放多个模块,不同的模块可以存放项目中不同的业务功能代码。在黑马程序员的官方网站中,至少包含了以下模块:
- 论坛模块
- 报名、咨询模块
为了更好的管理代码,我们会把代码分别放在两个模块中存放。
package(包)
一个模块中又有很多的业务,以黑马程序员官方网站的论坛模块为例,至少包含了以下不同的业务。
- 发帖
- 评论
为了把这些业务区分的更加清楚,就会用包来管理这些不同的业务。
class(类)
就是真正写代码的地方。
1.3.3 小结
-
层级关系
project - module - package - class
-
包含数量
project中可以创建多个module
module中可以创建多个package
package中可以创建多个class 这些结构的划分,是为了方便管理类文件的。
1.4 IDEA中的第一个代码
1.4.1 操作步骤
- 创建Project 项目
- 创建Module 模块
- 创建class 类
- 在类中编写代码
- 完成编译运行
1.4.2 分步图解
-
双击启动图标
-
首先要新建一个项目
点击creat new project
-
我们要从0开始写代码,所以新建一个空的什么都没有的项目。
点击左下方的Empty Project
再点击右下角的next
-
输入项目的名称
输入项目的存放路径
- 点击ok。idea会帮助我们在本地创建一个项目文件夹
- 点击Module,准备新建一个模块
-
点击+
再点击New Module
d=img-swnU60qn-1697855510281)
-
我们要编写Java代码,所以要新建一个Java模块。
点击Java
再点击右下角的next
-
输入模块的名称
再点击右下角的Next
-
成功新建一个模块之后,中间就会出现刚刚新建的模块
点击右下角的OK
-
回到主界面
展开刚刚新建的模块
右键点击src,选择New,选择Java Class
-
输入类名
再按回车
-
由于字体比较小
所以,我们要设置一下字体。
点击File,选择Setting。
-
搜索一下font
在右边可以输入Size的数值来调节代码字体的大小。
设置完毕后点击右下角的OK
- 编写代码
-
运行代码
右键空白处,点击Run
-
最下面会弹出控制台。
所有输出语句中的内容,都会在控制台上展示。
1.5 IDEA中类的相关操作
1.5.1 类的相关操作
- 新建类文件
- 删除类文件
- 修改类文件
1.5.2 新建类文件
-
所有的Java代码都会写在src文件夹当中。
所以,右键点击src,选择new,点击Java Class
-
输入类名,再按回车
-
新建完毕
1.5.3 修改类名
-
右键点击想要修改的文件
点击Refactor
再点击Rename
-
输入想要修改的名字
输入完毕点击下面的Refactor
-
文件名和类名均已修改成功
1.5.4 删除类文件
-
想要删除哪个文件,就右键点击该文件
选择Delete即可
- 在弹出的界面中点击OK,确定删除
小贴士:
此时删除是不走回收站的,直接从硬盘中删掉了。
1.6 IDEA中模块的相关操作
1.6.1 模块的相关操作
- 新建模块
- 删除模块
- 修改模块
- 导入模块
1.6.2 新建模块
- 点击File,选择Project Structure
- 选择Module
os_id=img-0zHZwXGF-1697855510284)
-
点击+
选择New Module
-
要创建一个Java模块,所以选择第一个Java
点击右下角的Next
-
输入模块的名称
点击右下角的Finish
-
成功新建完毕之后,在中间空白区域就出现了刚刚新建的模块
点击右下角的OK
- 在主界面中,也会出现刚刚新建的模块
1.6.3 删除模块
-
右键点击模块
选择Remove Module
- 选择Remove,表示确定删除
- 此时发现,在IDEA列表页面,删除的模块已经不在了。
小贴士:
此时删除仅仅是从IDEA列表中的删除,在本地硬盘中还是存在的。
1.6.4 修改模块
-
右键点击模块名
选择Refactor
再选择Rename
-
选择第三个修改模块名和本地文件夹名
点击OK
-
输入要修改的新的模块名
输入完毕点击Refactor
- 回到主界面,就发现模块名和文件夹名都已经修改完毕
1.6.5 导入模块
- 点击File,选择Project Structure
-
选择Module
点击+
选择Import Module
-
从本地硬盘中选择要导入的模块
再点击OK
- 不断点击Next
-
如果中间出现提示框,则点击Overwrite
然后继续点击右下角的Next
- 一直点到finish为止
- 成功导入后,在中间位置就会出现导入的模块信息
- 在主界面中也会出现导入的模块信息
-
展开模块点击模块中的Java文件,会发现代码报错。
是因为导入模块跟JDK没有关联导致。
-
可以点击右上角的Setup SDK
再选择已经安装的JDK版本即可
259710.png&pos_id=img-488bOac9-1697855510290)
- 导入完毕之后,代码就恢复正常不会报错了
1.7 IDEA中项目的相关操作
1.7.1 项目的相关操作
- 关闭项目
- 打开项目
- 修改项目
- 新建项目
1.7.2 关闭项目
- 点击File,选择Close Project即可
-
刚刚操作的项目就已经关闭了
左侧是项目列表,如果要再次打开该项目,直接点击即可。
右侧有create new project,可以再建一个新的项目
-
鼠标放在项目上,后面会出现一个叉。
如果点击了这里的叉,会在IDEA的列表中删除。不会删除本地硬盘上的项目。
1.7.3 打开项目
-
在本界面还可以打开本地已经存在的项目
点击Open or Import
-
选择要打开的项目
点击OK
- 项目就被打开了。
1.7.4 修改项目
- 点击File,选择Project Structure
-
在这个界面,默认是Module
所以,要先点击Project
在右侧页面中,输入新的项目名称
修改JDK版本和编译版本都变成JDK14
再点击OK
- 此时发现,项目名称已经修改完毕
- 但是本地文件夹的名字还没有修改
- 需要先关闭当前项目
- 点击项目后面的叉,从列表中移除项目
- 到本地硬盘中手动修改文件夹的名称
在这里插入图片描述
- 点击Open or Import重新打开项目
-
选择修改之后的项目
点击OK
- 此时会发现,项目名称和本地硬盘文件夹的名称都已经修改完毕了
8.7.5 新建项目
-
点击File
选择New
点击Project
- 同样还是创建一个什么都没有的空项目
-
输入项目的名称
点击右下角的finish
-
IDEA循环是否需要帮我们在本地创建一个新的文件夹
点击OK
-
询问是在本窗口打开还是在一个新的窗口打开。
可以点击New Window,在一个新的窗口打开。
- 此时就出现了两个窗口,在一个新的窗口打开了新的项目
- 到此 IDEA 安装、工程、模块、包、类、以及简单的配置就到此告一段落。下期(Java基础语法)再见!
Java基础:第二期
相关文章:

Java基础(第一期):IDEA的下载和安装(步骤图) 项目结构的介绍 项目、模块、类的创建。第一个代码的实现
Java基础专栏: Java基础第一期下一期:Java基础第二期 文章目录 IDEA1.1 IDEA概述1.2 IDEA的下载和安装1.2.1 下载1.2.2 安装 1.3 IDEA中层级结构介绍1.3.1 结构分类1.3.2 结构介绍project(项目、工程)module(模块&…...

0基础学习PyFlink——使用PyFlink的SQL进行字数统计
在《0基础学习PyFlink——Map和Reduce函数处理单词统计》和《0基础学习PyFlink——模拟Hadoop流程》这两篇文章中,我们使用了Python基础函数实现了字(符)统计的功能。这篇我们将切入PyFlink,使用这个框架实现字数统计功能。 PyFl…...

【Java系列】ArrayList
ArrayList 添加元素访问元素修改元素删除元素计算大小迭代数组列表其他的引用类型ArrayList 排序Java ArrayList 方法系列文章系列文章版本记录 引言 ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删…...
sqlalchemy 使用
Python中强大的通用ORM框架:SQLAlchemy - 知乎...

Python深度学习实战-基于class类搭建BP神经网络实现分类任务(附源码和实现效果)
实现功能 上篇文章介绍了用Squential搭建BP神经网络,Squential可以搭建出上层输出就是下层输入的顺序神经网络结构,无法搭出一些带有跳连的非顺序网络结构,这个时候我们可以选择类class搭建封装神经网络结构。 第一步:import ten…...

GIS 数据结构整理:网格索引
1 一维网格索引 把整个数据库数值空间划分成n*n的正方形网格,建立另一个倒排文件——栅格索引每一个网格在栅格索引中有一个索引条目(记录),在这个记录中登记所有位于或穿过该网格的物体的关键字 1.1 变长指针法 在这个网格的物体,按照序号…...

【打靶】vulhub打靶系列(一)—小白视野的渗透测试
主机探测 arpscan arp-scan -l 另一种方法arping for i in $(seq 1 200); do sudo arping -c 1 192.168.56.$i; done 注意这个必须是root权限 端口探测 nmap nmap -p- -sV -T4 192.168.56.104 发现8080端口 web测试 访问下web页面 1、通过逻辑点绕过 发送到xia_sq…...

kafka3.X集群安装(不使用zookeeper)
参考: 【kafka专栏】不用zookeeper怎么安装kafka集群-最新kafka3.0版本 一、kafka集群实例角色规划 在本专栏的之前的一篇文章《kafka3种zk的替代方案》已经为大家介绍过在kafka3.0种已经可以将zookeeper去掉。 上图中黑色代表broker(消息代理服务)&…...
2023 年 的 DBA 有哪些变化?
作者:Craig S. Mullins 数据库专家,IBM 优化冠军,DB2 金牌顾问以及 IDUG 名人堂成员,数据库类畅销书作者,著有《DB2 Developers Guide》、《Database Administration: The Complete Guide to DBA Practices & Pro…...

vs2022 使用git同步报错以及解决每次推送要输入密码问题
1.使用 git GUI工具,例如:TortoiseGit ,把全局配置文件这样设置一下 设置全局.config ,这样即可。 [credential] helper store 2.如果推送代码或拉取代码一直失败,在当前的仓库下面,使用以下命令来重置一下密码 git …...

有哪些适用于 Windows 的PDF 阅读器?免费 PDF 阅读器清单
探索适用于 Windows 10 和 11 的最佳 PDF 阅读器 适用于 Windows 10 和 Windows 11 的最佳 PDF 阅读器让您可以在台式计算机上查看和共享文档。 最好的PDF 编辑器和免费的 PDF 编辑器配备了先进的工具,可以跨不同的操作系统工作。但是,当您只需要查看和…...

避雷!新增2本期刊被标记为「On Hold」,1区TOP刊仍在调查中!
近期小编在Master Journal List上查询期刊时偶然发现,又有2本期刊被科睿唯安标记为「On Hold」! 这2本期刊分别为MIGRATION LETTERS和REVISTA DE GESTAO E SECRETARIADO-GESEC. 此外还有6本期刊被标记为「On Hold」,目前共计8本期刊被「On …...

iOS 配置通用链接(Universal Link)服务端和开发者后台都配置好了,还是跳转不到App
目录 一、什么是 Universal Link? 1.背景介绍 2.特点 3.运行机制原理&流程图 二、配置教程 1.第一步:开启 Associated Domains 服务 1.1 开通 Associated Domains 2.第二步:服务器配置 apple-app-site-association(AAS…...

【环境】Linux下Anaconda/ Miniconda安装+百度Paddle环境搭建+Cudnn(3090显卡+CUDA11.8+cudnn8.6.0)
清华源帮助链接:https://mirror.tuna.tsinghua.edu.cn/help/anaconda/ 下载链接:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/ 其他深度学习环境相关博文:【stable-diffusion】4090显卡下dreambooth、lora、sd模型微调的GUI环境…...
【Python机器学习】零基础掌握AdaBoostRegressor集成学习
有没有经历过这样的状况:需要预测未来房价走势,但传统的预测方法并不总是准确? 房价预测一直是人们关注的热点话题,无论是房产商、购房者,还是政府,都需要准确地知道未来房价的走势。那么,有没有一种更加精准、稳定的预测方法呢?答案是有的——AdaBoost Regressor算法…...
各种添加路由的方法
Linux 篇: ipv4: #添加到主机的路由 # route add –host 192.168.168.110 dev eth0 # route add –host 192.168.168.119 gw 192.168.168.1 #添加到网络的路由 # route add –net IP netmask MASK eth0 # route add –net IP netmask MASK gw IP # route add –n…...
MySQL外键
目录 一.外键 1.表与表之间建立关系 2.什么是外键 3.一对多关系 4.多对多关系 (1)建表会遇到的问题 (2)解决循环建表的问题 5.一对一关系、 6.小结 二.多表查询 1.数据准备 2.多表查询案例 (1)…...
自制数据库迁移工具-C版-02-HappySunshineV1.1-(支持Gbase8a)
目录 一、环境信息 二、简述 三、升级点 四、支持功能 五、安装包下载地址 六、配置参数介绍 七、安装步骤 1、配置环境变量 2、生效环境变量 3、检验动态链接是否正常 4、修改配置文件MigrationConfig.txt 八、运行效果 一、环境信息 名称值CPUIntel(R) Core(TM) i…...
k8s创建pod-affinity亲和性时报错解决办法
1.如下报错 Error from server (BadRequest): error when creating “pod-required-affinity-demo-2.yaml”: Pod in version “v1” cannot be handled as a Pod: json: cannot unmarshal string into Go struct field LabelSelectorRequirement.spec.affinity.podAffinity.re…...

基于边缘智能网关的储能系统安全监测管理方案
“储能系统充电”是配套新能源汽车产业发展的重要应用之一。得益于电池技术的发展,新能源汽车正逐步迈入快充时代,由于在使用快速充电桩时,可能导致用电峰值负荷超过电网的承载能力,对于电网的稳定性和持续性会有较大影响…...
【评测】Qwen3-Embedding模型初体验
每一篇文章前后都增加返回目录 回到目录 【评测】Qwen3-Embedding模型初体验 模型的介绍页面 本机配置:八代i5-8265U,16G内存,无GPU核显运行,win10操作系统 ollama可以通过下面命令拉取模型: ollama pull modelscope…...

Azure 虚拟机端口资源:专用 IP 和公共 IP Azure Machine Learning 计算实例BUG
## 报错无解 找不到Azure ML 计算实例关联的 NSG .env 文件和 ufw status: .env 文件中 EXPOSE_NGINX_PORT8080 是正确的,它告诉 docker-compose.yaml 将 Nginx 暴露在宿主机的 8080 端口。 sudo ufw status 显示 Status: inactive,意味着宿…...

PHP环境极速搭建
一、为什么选择phpStudy VS Code? 作为一名初次接触PHP的开发者,我深知环境配置往往是学习路上的第一道门槛。传统PHP环境搭建需要手动配置Apache/Nginx、PHP解释器、MySQL等多重组件,光是处理版本兼容性和依赖问题就可能耗费半天时间——这…...
一.设计模式的基本概念
一.核心概念 对软件设计中重复出现问题的成熟解决方案,提供代码可重用性、可维护性和扩展性保障。核心原则包括: 1.1. 单一职责原则 定义:一个类只承担一个职责,避免因职责过多导致的代码耦合。 1.2. 开闭原则 定义…...

机器学习基础相关问题
机器学习相关的基础问题 K-means是否一定会收敛 K-means是否一定会收敛 K-means算法在有限步数内一定会收敛,但收敛到的可能是局部最优解而非全局最优解。以下是详细分析: K-means 的优化目标是最小化 样本到其所归属簇中心的距离平方和(SSE…...

分析 java 的 Map<String,Map<String, List<Map<String,Integer>>>>
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;public class Test02 {public static void main(String[] args) {//分析方法:由外层向内层逐渐拆解要定义的变量。再由内向外进行变量赋值//外层第一层&#x…...
十(1). 强制类型转换
继第十部分C强制类型转换的四种方式,再进行强化巩固一下知识点 static_cast 最常用的,在指针之间做转换 const_cast 去除常量属性 dynamic_cast 用在基类和派生类之间的转换 reinterpret_cast 在任意类型之间进行转 10.1 static_cast 常见的使用场景&am…...
Langgraph实战--自定义embeding
概述 在Langgraph中我想使用第三方的embeding接口来实现文本的embeding。但目前langchain只提供了两个类,一个是AzureOpenAIEmbeddings,一个是:OpenAIEmbeddings。通过ChatOpenAI无法使用第三方的接口,例如:硅基流平台…...
Shell编程核心符号与格式化操作详解
Shell编程作为Linux系统管理和自动化运维的核心技能,掌握其常用符号和格式化操作是提升脚本开发效率的关键。本文将深入解析Shell中重定向、管道符、EOF、输入输出格式化等核心概念,并通过丰富的实践案例帮助读者掌握这些重要技能。 一、信息传递与重定…...
JDK21深度解密 Day 15:JDK21实战最佳实践总结
【JDK21深度解密 Day 15】JDK21实战最佳实践总结 文章简述 本篇文章是《JDK21深度解密:从新特性到生产实践的全栈指南》系列的第15篇,聚焦于JDK21实战最佳实践总结。作为Java历史上最重要的LTS版本之一,JDK21带来了虚拟线程、结构化并发、模式匹配、ZGC优化等革命性特性,…...