当前位置: 首页 > news >正文

一、Java入门知识与基本使用

文章目录

  • 一、Java背景知识
    • 1.1 技术体系平台
    • 1.2 Java重要特点
    • 1.3 Java的开发工具
    • 1.4 Java的运行机制
  • 二、Java安装
    • 2.1 下载JDK
    • 2.2 配置环境变量 path
  • 三、Java开发快速入门
    • 3.1 Java快速入门程序
    • 3.2 Java执行流程分析
    • 3.3 Java开发注意事项和细节说明
    • 3.3 Java转义字符
    • 3.4 初学Java易犯错误
    • 3.5 注释(comment)
    • 3.6 Java代码规范
    • 3.7 DOS命令(了解)
  • 本章作业

一、Java背景知识

1.1 技术体系平台

在这里插入图片描述

1.2 Java重要特点

  • Java语言是面向对象的(oop)

  • Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性能的重要保证

  • Java语言是跨平台性的(即:一个编译好的.class文件可以在多个系统下运行,这种特性称为跨平台性)
    在这里插入图片描述

  • Java语言是解释性的
    解释性语言:JavaScript、PHP、Java、Python
    编译性语言:C / C++
    区别:解释性语言,编译后的袋面不能直接被机器执行,需要解释器来执行,编译性语言,编译后的代码,可以直接被机器执行,C / C++

1.3 Java的开发工具

在这里插入图片描述

在这里插入图片描述

1.4 Java的运行机制

  • 编写好的 .java 文件会先被编译.class 文件,在各操作系统中使用JVM运行 .class 文件
    在这里插入图片描述

  • Java核心机制-Java虚拟机[JVM java virtual machine]

    • 基本介绍
      1. JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令。管理数据、内存、寄存器,包含在 JDK
      2. 对于不同的平台,有不同的虚拟机
      3. Java虚拟机机制屏蔽了底层运行平台的差别,实现了 “一次编译,到处运行”。
    • 示意图
      • 使用 javac指令实现将.java文件编译为 .class 文件,使用 java 指令实现运行 .class 文件
        在这里插入图片描述
  • 什么是JDK、JRE

    • JDK基本介绍

      1. JDK的全称(Java Development Kit Java开发工具包)
        JDK = JRE + java的开发工具[java,javac,javadoc,javap]
      2. JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用再单独安装JRE了
    • JRE基本介绍

      1. JRE(Java Runtime Environment Java运行环境)
        JRE = JVM + Java的核心类库[类]
      2. 包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的和兴类库等
        如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可

二、Java安装

2.1 下载JDK

  • 官方网址:
https://www.oracle.com/java/technologies/downloads/archive/

2.2 配置环境变量 path

在这里插入图片描述

在这里插入图片描述

三、Java开发快速入门

3.1 Java快速入门程序

在这里插入图片描述

  • 代码编写
//这是Java的快速入门,演示Java的开发步骤
//对代码的相关说明
//1. public class Hello 表示Hello是一个类,是一个public公有的类
//2. Hello{...} 表示一个类的开始和结束
//3. public static void main(String[] args) 表示一个主方法,即我们程序的入口
//4. main(){...} 表示方法的开始和结束
//5. System.out.println("hello,world~"); 表示输出 "hello,world~" 到屏幕
//6. ; 表示语句结束
public class Hello{public static void main(String[] args){System.out.println("hello,world~");}
}
  • javac编译
    在这里插入图片描述

  • java运行
    在这里插入图片描述

  • 运行原理图
    在这里插入图片描述

3.2 Java执行流程分析

在这里插入图片描述

  • 什么是编译
javac Hello.java
1. 有了java源文件,通过编译器将其编译成JVM可以识别的字节码文件
2. 在该文件目录下,通过 javac编译工具对Hello.java文件进行编译
3. 如果程序没有错误,没有任何提示,但在当前目录下会出现一个Hello.class文件,
该文件称为字节码文件,也是可以执行的java的程序
  • 什么是运行
1. 有了可执行的java程序(Hello.class字节码文件)
2. 通过运行工具java.exe对字节码文件进行执行,本质就是.class装载到JVM执行
  • java程序开发注意事项
    对修改后的Hello.java源文件需要重新编译,生成新的class文件后,在进行执行,才能生效

3.3 Java开发注意事项和细节说明

在这里插入图片描述

//针对上述第6点
public class Hello{public static void main(String[] args){System.out.println("hello,world~");}
}
// 一个源文件中最多只能有一个public类。其他类的个数不限。
// Dog 是一个类
// 编译后,每一个类,都对于一个 .class
class Dog{
}class Tiger{
}

3.3 Java转义字符

  • Java常用的转义字符
    在这里插入图片描述

3.4 初学Java易犯错误

在这里插入图片描述

在这里插入图片描述

3.5 注释(comment)

  • 介绍:
    用于注解说明解释程序的文字就是注释,注释提高可代码的阅读性(可读性);注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现
  • Java中的注释类型
    • 单行注释

      • 基本格式: //注释文字
    • 多行注释

      • 基本格式: /* 注释文字 */
    • 文档注释:注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档,一般写在类
      在这里插入图片描述

    • 使用细节

      1. 被注释的而文字,不会被JVM(Java虚拟机)解释执行
      2. 多行注释里面不允许多行注释嵌套

3.6 Java代码规范

在这里插入图片描述

3.7 DOS命令(了解)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

本章作业

在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 常见面试问题(Python)
  • Java核心API——Collection集合的工具类Collections
  • 解决Jasper Studio报表工具中预览正常显示,但部署到服务器上面无法正常显示的问题
  • linux neo4j 切换知识图谱
  • 粘包,Telnet,SSH,Wireshark
  • 基于Java和GeoTools的Shapefile矢量数据缩略图生成实践
  • STM32——GPS模块(GY-NEO-6M)
  • python使用ffmpeg将视频、音频合并合成(速度最快)
  • 最短路总结(dijkstra,floyd,bellman,spfa)
  • JavaWeb基础 -- Spring框架、IOC、AOP
  • Ubuntu 22.04中解决Could not load the Qt platform plugin “xcb“问题解决方法
  • 一条微博,让联想少卖16亿?
  • 软件测试用例的编写(六)
  • 嵌入式和单片机有什么区别?
  • 回归预测|基于灰狼GWO优化BP神经网络多输入多输出的数据回归预测Matlab程序GWO-BP 含预测新数据程序
  • 10个确保微服务与容器安全的最佳实践
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • bootstrap创建登录注册页面
  • js对象的深浅拷贝
  • MYSQL 的 IF 函数
  • React-flux杂记
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • Spark学习笔记之相关记录
  • V4L2视频输入框架概述
  • 高度不固定时垂直居中
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 每天一个设计模式之命令模式
  • 前端存储 - localStorage
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 使用 QuickBI 搭建酷炫可视化分析
  • 使用SAX解析XML
  • 一天一个设计模式之JS实现——适配器模式
  • 怎样选择前端框架
  • C# - 为值类型重定义相等性
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • 昨天1024程序员节,我故意写了个死循环~
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ‌分布式计算技术与复杂算法优化:‌现代数据处理的基石
  • $jQuery 重写Alert样式方法
  • (55)MOS管专题--->(10)MOS管的封装
  • (function(){})()的分步解析
  • (NSDate) 时间 (time )比较
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (七)理解angular中的module和injector,即依赖注入
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (四)软件性能测试
  • (转)3D模板阴影原理
  • (转)甲方乙方——赵民谈找工作
  • .“空心村”成因分析及解决对策122344
  • .net core 源码_ASP.NET Core之Identity源码学习
  • .NET Core 中插件式开发实现
  • .Net(C#)常用转换byte转uint32、byte转float等
  • .NET分布式缓存Memcached从入门到实战
  • .net开发时的诡异问题,button的onclick事件无效