java入门详细教程——day01

目录

1. Java入门

1.1 Java是什么?

1.2 Java语言的历史

1.3 Java语言的分类

1.4 Java语言的特点

1.4.1 先编译再解释运行

1.4.2 跨平台

1.5 JRE和JDK(记忆)

1.6 JDK的下载和安装(应用)

1.6.1 下载

1.6.2 安装

1.6.3 JDK的安装目录介绍

1.7 常用DOS命令(了解)

1.8 Path环境变量的配置(应用)

1.8.1 为什么配置环境变量?

2. Java基础语法

2.1 注释(理解)

文档注释。文档注释以/**开始,以*/结束。

2.2 关键字(理解)

2.3 常量(应用)

2.4 数据类型(应用)

2.5 变量(应用)

总结:通常采用第一种方式来定义变量。

2.6 标识符(理解)


 Java源自于C++,Sun公司为了抢占市场先机,在1991年成立了一个称为Green的项目小组,专门研究计算机在家电产品上的嵌入式应用。由于C++程序过于复杂和庞大,不适合在硬件资源有限的单片式系统上运行,因此项目组的研究人员根据嵌入式软件的要求,对C++进行了改造,去除了留在C++的一些不太实用及影响安全的成分,并结合嵌入式系统的实时性要求,开发了一种称为Oak的面向对象语言。这就是Java的前身。

  注:喜欢的朋友可以关注下方公众号系统学习,内容持续更新。带你走进java的世界

1. Java入门

1.1 Java是什么?

  • 自然语言:人与人之间沟通交流的方式。

  • 计算机语言:人与计算机之间沟通交流的方式。

  • 计算机语言发展历史:第一代(机器语言) 第二代(汇编语言) 第三代(高级语言),其中高级语言又分为 面对过程的语言(c语言)和面向对象的语言(Java语言)。

所以我们说Java是一门面向对象的高级计算机语言。

1.2 Java语言的历史

Java语言是美国Sun公司(Stanford University Network)斯坦福大学网络公司 在1995年推出的计算机语言。2009年,Sun公司被甲骨文公司(Oracle)收购。Java之父:詹姆斯·高斯林(James Gosling)

Java的版本迭代:1.0 1.1 1.2 1.3 1.4(小版本号更新)因为5的更新力度非常的大,从5开始,Java就使用了大版本号更新。

  • Java5.0:第一个大版本更新。

  • Java8.0:公司里面最为常用的版本

  • Java12.0:课程中学习的版本。

  • 为什么公司常用的还是Java8.0?

  • 长期支持版本:就是Oracle公司长期有专门的人去更新维护java8版本。

  • 公司里面用的是8,现在学习的是12,不一样了啊?

因为Java在更新的时候,高版本兼容低版本。高版本在更新的时候,不会推翻以前的东西,只是在原有的基础上添加了一些新的功能而已。如果我们用Java8写的代码,是可以用12去运行的。如果我们用Java12写代码,可不可以用8去运行?不一定。如果在代码中,我们使用了高于8的新内容。就不能用8去运行了。

1.3 Java语言的分类

  • JavaSE: Java 语言的(标准版),用于桌面应用的开发,是其他两个版本的基础。

  • JavaME: Java 语言的(小型版),用于嵌入式消费类电子设备,现在不用了。

  • JavaEE: Java 语言的(企业版),用于 Web 方向的网站开发。网站的简单理解= 网页+后台服务器

1.4 Java语言的特点

1.4.1 先编译再解释运行

1.4.2 跨平台

  • 平台:指的是操作系统(Windows,Linux,Mac)

  • 跨平台:Java程序一次编译之后,可以在任意操作系统上运行。

  • 原理:实现跨平台需要依赖Java的虚拟机 JVM (Java Virtual Machine)。 JVM相当于翻译官。

1.5 JREJDK(记忆)

  • JRE(Java Runtime Environment),Java运行时环境,包含了JVM和Java的核心类库(Java API)。

  • 类库:java类的仓库,里面装的是java提供的写好Java类,我们只需要拿来直接使用。

  • JDK(Java Development Kit)称为Java开发工具,包含了JRE和开发工具

  • 开发工具:主要有二个,javac.exe 编译工具 java.exe 运行工具

JDK、JRE、JVM三者的包含关系?

1.6 JDK的下载和安装(应用)

1.6.1 下载

通过官方网站获取:JDKhttp://www.oracle.com

​注意:针对不同的操作系统,需要下载对应版本的JDK。

下面的链接是 oracle 官网对所有版本的 jdk 下载的归档地址。
Java Archive | Oracle

1.6.2 安装

傻瓜式安装,下一步即可。但默认的安装路径是在C:\Program Files下,为方便统一管理建议修改安装路径,将与开发相关的软件都安装到一个目录下,例如:D:\develop 或者D:\soft

注意:安装路径不要包含中文或者空格等特殊字符(使用纯英文目录)。

扩展:一个电脑上可以安装多个不同版本的JDK,我们这里安装一个JDK8和一个JDK12.其中JDK12用于我们JavaSe阶段学习使用,JDK8用于JavaSe后续阶段使用。

1.6.3 JDK的安装目录介绍

1.7 常用DOS命令(了解)

DOS:DOS是微软在window操作系统之前推出的一款操作系统,在我们现在的window系统中一直保留。

DOS命令:DOS操作系统是命令行式的,跟我们window可视化不一样,我们需要通过命令来完成各种操作。

为什么要学习DOS命令:javac.exe java.exe 直接双击不能运行 需要在DOS下进行运行。

  • 进入DOS窗口的方式:win + r打开运行窗口,输入cmd,回车。

  • 快捷进入cmd窗口方式

常用命令及其作用

1.8 Path环境变量的配置(应用)

开发Java程序,需要使用JDK提供的开发工具(比如javac.exe、java.exe等命令),而这些工具在JDK的安装目录的bin目录下,如果不配置环境变量,那么这些命令只可以在该目录下执行。我们不可能把所有的java文件都放到JDK的bin目录下,所以配置环境变量的作用就是在任意目录下使用jdk的bin目录下的java相关命令。

1.8.1 为什么配置环境变量?

在系统变量中添加一个名称叫JAVA_HOME的环境变量,JAVA_HOME=jdk的安装目录。如上图。

​为什么叫这个名字?因为web阶段我们要用到一个tomcat服务器,它是java语言开发的,它启动的时候会找一个叫JAVA_HOME的环境变量,如果找不到就报错

添加完JAVA_HOME之后,我们对path进行修改,在最前面加上%JAVA_HOME%\bin。

怎样验证配置成功?: 一定要注意新开一个dos窗口

打开一个dos窗口后 在任意目录下输入javac 出来如下效果则表示配置成功。

2. Java基础语法

2.1 注释(理解)

​注释是一段对代码的解释说明文字,可以提高程序的可读性,因此在程序中添加必要的注释文字十分重要。

Java中的注释分为三种:单行注释。单行注释的格式是使用//,从//开始至本行结尾的文字将作为注释文字。

// 这是单行注释文字

多行注释。多行注释的格式是使用/* 和 */将一段较长的注释括起来。多行注释使用是注意不要嵌套使用。

/*
这是多行注释文字
这是多行注释文字
这是多行注释文字
*/

文档注释。文档注释以/**开始,以*/结束。

2.2 关键字(理解)

  • ​​ 关键字的字母全部小写。

  • 常用的代码编辑器对关键字都有高亮显示,比如现在我们能看到的public、class、static等。

补充:保留字:goto const 目前的java版本没有使用,但是后续的java版本有可能作为关键字使用,作为保留,我们定义标识符的时候不能使用。

2.3 常量(应用)

常量:在程序运行过程中,其值不可以发生改变的量。

2.4 数据类型(应用)

我们知道计算机中用来存储数据的设备有内存和硬盘,其中内存是用来对数据进行临时存储的,硬盘是用来对数据进行永久存储的。那它们的最小存储单位是“位(bit)”,我们又称之为“比特位”,通常用小写的字母”b”表示。

而计算机中最基本的存储单元叫“字节(byte)”,通常用大写字母”B”表示,字节是由连续的8个位组成。

除了字节外还有一些常用的存储单位,其换算单位如下:

1B(字节) = 8bit

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

2.5 变量(应用)

变量:在程序运行过程中,其值可以发生改变的量。

数据类型 变量名 = 数据值; // 声明变量并赋值
int age = 18;
或者// 先声明,后赋值(使用前赋值即可)
数据类型 变量名;
变量名 = 数据值;
double money;
money = 55.5;
System.out.println(money);
或者
int a = 10, b = 20; // 定义int类型的变量a和b,中间使用逗号隔开
System.out.println(a);
System.out.println(b);

总结:通常采用第一种方式来定义变量。

变量的修改

变量前面不加数据类型时,表示修改已存在的变量的值。

2.6 标识符(理解)

标识符是指在代码中,给类、方法、变量、常量等取的名字。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3016334.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

新手做抖音小店多久能出单?新手抖音小店出单秘籍!出单教程必看

大家好,我是电商花花。 现阶段还是有很多朋友加入到抖音电商行业,因为抖音小店上还隐藏很多的红利和市场,很多新手开店后第一个问题就是,店铺开通后,一般多久能出单? 多久能出单,其实更看重的…

并发编程之阻塞队列BlockingQueue实战及其原理分析

1. 阻塞队列介绍 1.1 队列 是限定在一端进行插入,另一端进行删除的特殊线性表。 先进先出(FIFO)线性表。 允许出队的一端称为队头,允许入队的一端称为队尾。

分布式与一致性协议之ZAB协议(五)

ZAB协议 ZAB集群如何从故障中恢复 如果我们想把ZAB集群恢复到正常状态,那么新领导者就必须确立自己的领导关系,成为唯一有效的领导者,然后作为主节点"领导"各备份节点一起处理读写请求 如何确立领导关系 前面提到,选…

5000A信号发生器使用方法

背景 gnss工作需要使用的5000A,所以做成文档,用于其他员工学习。 下载星历数据 https://cddis.nasa.gov/archive/gnss/data/daily/2024/brdc/ 修改daily中的年份,就可以获取相关截至时间的星历数据 brcd数据格式 第一行记录了卫星的PRN号&a…

Java毕业设计 基于SpringBoot vue企业信息管理系统

Java毕业设计 基于SpringBoot vue企业信息管理系统 SpringBoot 企业信息管理系统 功能介绍 员工:登录 个人中心 修改密码 个人信息 会议管理 公告管理 个人计划管理 通讯录管理 外出登记管理 请假管理 上下班打卡管理 管理员:登录 个人中心 修改密码 …

流量暴涨!抖音+快手+小红书获客攻略!

在数字营销的海洋中,抖音、快手和小红书无疑是三座巨大的灯塔,照亮了品牌和个人获取流量的道路。这些平台不仅拥有庞大的用户基础,而且其独特的算法和社交特性让获客变得更加高效而精准。接下来,让我们深入探讨如何通过这三个平台…

Eplan带你做项目——如何实现项目的交付

前言 Eplan作为一款专业的电气工程设计软件,不仅在设计阶段为电气工程师提供了强大的绘图、计算、仿真等功能,还具备丰富的数据管理与交换能力,能够便捷、准确地导出软件设计、生产制造所需的数据,实现电气设计与软件设计、生产制…

《QT实用小工具·五十九》随机图形验证码,带有一些可人的交互与动画

1、概述 源码放在文章末尾 该项目实现了可交互的动画验证码控件,趣味性十足: 字符变换动画 噪音动画 可拖动交互 项目demo演示如下所示: 项目部分代码如下所示: #ifndef CAPTCHAMOVABLELABEL_H #define CAPTCHAMOVABLELABEL…

Kubernetes 教程:在 Containerd 容器中使用 GPU

原文链接:Kubernetes 教程:在 Containerd 容器中使用 GPU 云原生实验室本文介绍了如何在使用 Containerd 作为运行时的 Kubernetes 集群中使用 GPU 资源。https://fuckcloudnative.io/posts/add-nvidia-gpu-support-to-k8s-with-containerd/ 前两天闹得沸沸扬扬的事件不知道…

技术速递|使用 .NET 为 Microsoft AI 构建可扩展网关

作者:Kara Saucerman 排版:Alan Wang Microsoft AI 团队构建了全面的内容、服务、平台和技术,以便消费者在任何设备上、任何地方获取他们想要的信息,并为企业改善客户和员工的体验。我们的团队支持多种体验,包括 Bing、…

全栈开发之路——前端篇(6)生命周期和自定义hooks

全栈开发一条龙——前端篇 第一篇:框架确定、ide设置与项目创建 第二篇:介绍项目文件意义、组件结构与导入以及setup的引入。 第三篇:setup语法,设置响应式数据。 第四篇:数据绑定、计算属性和watch监视 第五篇 : 组件…

详细讲解lua中string.gsub的使用

string.gsub 是 Lua 标准库中的一个函数,用于全局替换字符串中的某些部分。string.gsub 是 Lua 中非常实用的一个函数,它可以用来进行字符串的处理和替换操作。 它的基本语法如下: string.gsub(s, pattern, replacement [, n])s 是要处理的…

HarmonyOS实战开发教程-如何开发一个2048游戏

今天为大家分享的是2048小游戏,先看效果图: 这个项目对于新手友友来说可能有一点难度,但是只要坚持看完一定会有收获。因为小编想分享的并不局限于ArkTs语言,而是编程思想。 这个游戏的基本逻辑是初始化一个4乘4的数组&#xff…

深度学习模型训练套路与验证套路以及如何使用GPU进行模型训练

完整的模型训练套路:代码模板 数据集以经典的 CIFAR10 为例。 这个例子是很简单的,可能不太实用,但重点是通过这个例子掌握一种模型训练的写法套路,因此很有必要学习。 import torch.optim import torchvision from torch impo…

JavaScript异步编程——02-Ajax入门和发送http请求

同步和异步回顾 同步和异步的简单理解 同步:必须等待前面的任务完成,才能继续后面的任务。 异步:不受当前任务的影响。 拿排队举例: 同步:在银行排队时,只有等到你了,才能够去处理业务。 异…

【C++泛型编程】(二)标准模板库 STL

文章目录 标准模板库 STL容器算法迭代器仿函数/函数对象适配器分配器示例 标准模板库 STL C 的标准模板库(Standard Template Library,STL)旨在通过模板化的设计,提供一种通用的编程模式,使程序员能方便地实现和扩展各…

数据仓库项目---Day01

文章目录 框架的安装包数据仓库概念项目需求及架构设计项目需求分析项目框架技术选型系统数据流程设计框架版本选型集群资源规划设计 数据生成模块数据埋点主流埋点方式埋点数据上报时机 服务器和JDK准备搭建三台Linux虚拟机(VMWare)编写集群分发脚本xsyncSSH无密登录配置JDK准…

实现同一份数据的各种镜像

一个数据集通过某个轴(通常是垂直或水平轴)的镜像对称。这可以通过简单的数学运算来实现。 如果想要通过一块数据生成四份,可以通过以下步骤: 下面是一个简单的示例,展示了如何通过垂直轴(左右对称&#…

找不到模块“vue-router”。你的意思是要将 moduleResolution 选项设置为 node,还是要将别名添加到 paths 选项中?

在tsconfig.app.json中添加,记得一定是 tsconfig.app.json 中,如添加到 tsconfig.node.json 还是会报错的 哈哈哈哈,不瞒你们,我就添加错了,哈哈哈。所以这也算写一个demo提醒自己 "compilerOptions": {&qu…

深入理解指针1

目录 如对您有帮助,还望三连支持,谢谢!!! 1.内存和地址 计算机中常⻅的单位(补充): 如何理解编址 2.指针变量和地址 2.1取地址操作符(&) 2.2指针变…