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://www.mzph.cn/news/833062.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

04-22 周日 阿里云-瑶光上部署FastBuild过程(配置TLS、自定义辅助命令)

04-22 周日 阿里云-瑶光上部署FastBuild过程 时间版本修改人描述2024年4月22日14:18:59V0.1宋全恒新建文档2024年4月23日20:41:26V1.0宋全恒完成了基本流程的添加 简介 前提 准备两台服务,一台部署Docker,一台部署FastBuild的镜像容器服务所述的Docke…

深入剖析Spring框架:推断构造方法与@Bean注解的内部机制

你好,我是柳岸花开。 Spring框架作为Java开发中广泛使用的基础架构,其设计精巧、功能强大,尤其是其依赖注入(DI)和控制反转(IoC)特性,极大地提高了代码的可维护性和可测试性。本文将…

应用层协议——HTTP协议

1. 认识HTTP协议 HTTP(Hyper Text Transfer Protocol)协议又叫做超文本传输协议,是一个简单的请求-响应协议,HTTP通常运行在TCP之上。 超文本的意思就是超越普通的文本,http允许传送文字,图片&#xff0c…

嵌入式学习——C语言基础——day15

1. 段错误调试 1.1 打印法 在可能出现错误的位置加入打印,前一句能够打印出来,后一句打印不出来,问题就可以定位到两次打印中间的代码 1.2 gbd调试法 1. 编译代码时加入-g选项 gcc filename.c -g 2. 使用gdb调试生成的代码 gdb a.out 3. gdb调试命令 l 查看…

如何在已经安装好的PostgreSQL14中安装uuid 扩展

当前环境 PG14.8 LINUX 8.8 存在问题: 开发人员问,PG中,支持 生成UUID吗,具体是什么,答,类似这个函数 uuid_generate_v4() 看了一下, select uuid_generate_v4();会报错&#xff0…

C++之类与对象

1、类声明 2、共有、私有、保护成员。(就比如说你一个变量是private的,然后在main函数中,就调用不了,只能在这个类.cpp中调用) 3、数据抽象和封装 4、内联函数 内存体积会增大,以空间换时间:编…

CRM定义是什么?

CRM,即客户关系管理,是一种综合性的管理策略,旨在通过一系列技术手段和业务流程,建立、维护和优化企业与客户之间的关系。它不仅仅是一种技术工具,更是一种以客户为中心商业哲学,是现代企业提升竞争力、实现…

【极速前进】20240423-20240428:Phi-3、fDPO、TextSquare多模态合成数据、遵循准则而不是偏好标签、混合LoRA专家

一、Phi-3技术报告 论文地址:https://arxiv.org/pdf/2404.14219 ​ 发布了phi-3-mini,一个在3.3T token上训练的3.8B模型。在学术基准和内部测试中的效果都优于Mixtral 8*7B和GPT-3.5。此外,还发布了7B和14B模型phi-3-small和phi-3-medium。…

字节和旷视提出HiDiffusion,无需训练,只需要一行代码就可以提高 SD 生成图像的清晰度和生成速度。代码已开源。

字节和旷视提出HiDiffusion,无需训练,只需要一行代码就可以提高 SD 生成图像的清晰度和生成速度。代码已开源。 支持将图像生成的分辨率提高至40964096,同时将图像生成速度提升1.5至6倍。 支持所有 SD 模型同时也支持 SD 模型的下游模型&…

重装win11系统后找不到WiFi

由于电脑崩溃重装了系统,win11,装完之后WiFi图标不见了且网络适配器根本没有无线网络选项。 右键电脑》管理》网络适配器。 在刚装好系统时候并没有前两项,查了很多资料,比如 关机14s 重启,还有通过服务配置 WLAN AutoConfig 都…

windows 双网卡同时接入内外网

在公司使用wifi接入使用桌面云,但是公司wifi不能上外网,查资料不方便,通过手机同时接入外网。 同一台电脑设置同时连接内外网(wifi或共享的网络)_win7电脑同时使用手机和usb网卡使用wifi-CSDN博客 route print查看当前…

纯血鸿蒙APP实战开发——折叠屏扫描二维码方案

折叠屏扫描二维码方案 介绍 本示例介绍使用自定义界面扫码能力在折叠屏设备中实现折叠态切换适配。自定义界面扫码使用系统能力customScan,其提供相机流的初始化、启动扫码、识别、停止扫码、释放相机流资源等能力。折叠屏折叠状态通过监听display的foldStatusCha…

【网络编程】http协议

预备知识 什么是http协议 HTTP(Hypertext Transfer Protocol,超文本传输协议)是一个应用层的协议,用于在网络中传输超文本(如HTML文档)。HTTP协议建立在TCP/IP协议之上,是Web浏览器和Web服务器…

Redis学习6——Redis分布式锁

引言 分布式锁 分布式锁(Distributed Lock)是一种用于分布式系统中实现互斥访问的机制,在分布式系统中,多个节点同时访问共享资源可能导致数据不一致或竞态条件的问题,分布式锁通过协调多个节点之间的访问&#xff0…

运动控制“MC_MoveVelocity“功能块详细应用介绍

1、运动控制单位u/s介绍 运动控制单位[u/s]介绍-CSDN博客文章浏览阅读91次。运动控制很多手册上会写这样的单位,这里的u是英文单词unit的缩写,也就是单位的意思,所以这里的单位不是微米/秒,也不是毫米/秒,这里是一个泛指,当我们的单位选择脉冲时,它就是脉冲/秒,也就是…

懒人网址导航源码v3.9源码及教程

懒人网址导航源码v3.9源码及教程 效果图使用方法部分源码领取源码下期更新预报 效果图 使用方法 测试环境 宝塔Nginx -Tengine2.2.3的PHP5.6 MySQL5.6.44为防止调试错误,建议使用测试环境运行的php与mysql版本首先用phpMyAdmin导入数据库文件db/db.sql 如果导入不…

25-ESP32-S3 内置的真随机数发生器(RNG)

ESP32-S3 内置的真随机数发生器(RNG)😎 引言 📚 在许多应用中,随机数发生器(RNG)是必不可少的。无论是在密码学🔒、游戏🎮、模拟🧪或其他领域,随…

初期Linux

一,系统分为 1.1window系统 个人 :win7,win8,Win10,Win11服务器版:window server 2003,window server 2008 1.2Linux系统 centos7redhatubantukali 1.3什么是Linux? Linux是基…

武汉星起航:精准布局,卓越服务——运营交付团队领跑亚马逊

在全球电商浪潮中,亚马逊平台以其独特的商业模式和全球化的市场布局,吸引了无数商家和创业者的目光。在这个充满机遇的市场中,武汉星起航电子商务有限公司凭借其专业的运营交付团队,以其独特的五对一服务体系和精准的战略布局&…

【从零开始学习Minio | 第一篇】快速介绍什么是Minio

前言: 在当今数字化时代,数据的存储和管理已经成为了企业发展中的关键一环。随着数据量的不断增长和数据安全性的日益受到重视,传统的数据存储解决方案往往面临着诸多挑战。为了应对这些挑战,云存储技术应运而生,并在…