首页 > 其他分享 >01_概述

01_概述

时间:2023-09-01 17:44:49浏览次数:28  
标签:01 Java JDK Hello 编译 概述 java class

概述

博客中的图片内容全部采用 github 云存储,访问可能比较慢,可以想办法 github 加速。

三个阶段

  • 第一阶段:建立编程思想
  • 第二阶段:提升编程能力
  • 第三阶段:分析需求,代码实现能力

Java 基础=JavaSE

概述

程序:计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合。

历史(了解)

  • 1990 sun 公司启动绿色计划
  • 1992 创建 oak(橡树)语言 -> Java
  • 1994 gosling 参加硅谷大会 演示 Java 功能震惊世界
  • 1995 sun 正式发布 Java 的第一个版本
  • 2009 甲骨文公司宣布收购 Sun。2011,发布 Java7
  • ————————————

Java 之父是詹姆斯·高斯林

java 技术体系平台

Java SE(标准版)

Java EE(企业版)

Java ME(小型版)--- 因为 Android 系统出现,用的很少了。

Java 重要特点

  • 面向对象

  • 健壮的。

  • 跨平台性的。(JVM)一个编译好的.class 文件可以在多个系统下运行。

  • 解释型的语言。例如:JS,PHP,Python。编译型:C,C++.

开发工具

  • notpad++,记事本,sublime(初学时候使用)
  • IDEA(有一定了解后用)
  • Eclipse
  • Sublime Text

Java 运行机制及运行过程

  • JVM 是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器,包含在 JDK 中。
  • 对于不同的平台有不同的虚拟机。
  • Java 虚拟机屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”

text.java ->编译 Javac(需要开发工具) -> text.class -> 运行 Java(在不同的系统的 JVM)

JDK 基本介绍:

  1. Java Development Kit Java 开发工具包 JDK = JRE + Java 的开发工具。
  2. JDK 是提供给 Java 的开发人员使用,包含了 Java 的开发工具,包含 JRE,不需要单独安装 JRE 了。

JRE 基本介绍:

  1. Java Runtime Environment Java 运行环境 JRE = JVM + Java 的核心类库(类)
  2. 如果想要运行一个开发好的 Java 程序,计算机中只需要安装 JRE 即可。

此电脑相关:

右键->个性化->主题->桌面图标设置(勾选上就行)

下载和安装 JDK

  1. 网上或者官网下载。

  2. 一路安装 next。

  3. 安装路径不要有中文符号和空格

配置环境变量

  1. 安装完 JDK 后要配置环境变量,先我的电脑/计算机(右键)→ 属性 → 高级系统设置 → 高级 → 环境变量(或通过控制面板-系统和安全-系统高级系统设置-高级-环境变量)
  2. 在系统变量那部分下面,点击新建,新建JAVA_HOME变量。
    变量值填写电脑安装 jdk 的根目录(本人是D:\Java8)
  • 变量名:JAVA_HOME

  • 变量值:D:\Java8 // 要根据自己的实际路径配置

  • 变量名:CLASSPATH

  • 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; //记得前面有个"."

  • 变量名:Path

  • 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

注意: 如果使用 1.5 以上版本的 JDK,不用设置 CLASSPATH 环境变量,也可以正常编译和运行 Java 程序.

java 快速入门

需求说明
要求开发一个Hello.java程序,可以输出"hello,world!"

开发步骤
1)将Java代码编写到扩展名为Hello,java的文件中。[代码说明]
2)通过javac命令对该java文件进行编译,生成.class文件。
3)通过java命令对生成的class文件进行运行。

使用 Sublime 来写。

代码如下:

//对代码块的说明
//1.public class Hello表示Hello是一个类,public共有的类
//2.Hello{ }类的开始和结束
//3.public static void main(String[] args) 主方法程序的入口
//4.main() {  } 方法的开始和结束
//5. System.out.println("Hello,world~");输出到屏幕
//6.;表示语句结束
public class text{
    //编写一个主方法
    public static void main(String[] args){
        System.out.println("Hello,world~");
    }
}

编译:在 cmd 中运行javac text.java

发现报错如下图:

image-20230901163712610

原因是文件的编码问题。将文件编码切换为 GBK。在重新执行以上操作。结果如下:

image-20230901164914540

然后尴尬了

image-20230901170218275

查看得知是 javac 和 java 的版本不同导致,装了 2 个 Java 环境的。。。。。。继续排查吧!

image-20230901170447723

真相大白了。问题找到了,那怎么解决呢?

当然是更改环境变量了。然后。如下:

image-20230901171233742

我的系统变量 Path 怎么变成这样了?查阅解决方案可以知道;

如果 Path 变量中的第一行为%开头,那么当你再次点击 Path 选项卡的时候会是类似于上图这种格式的显示。能咋办,继续改呗。改完后如下图:

image-20230901171606681

image-20230901171724369

版本相同以后在重新编译运行一下试一试。

image-20230901171910192

成功

.java 文件叫做源文件

.class 文件叫做字节码文件

  1. 编译就是 java 源文件编译成 JVM 可以识别的字节码文件

  2. javac 是编译工具

  3. 代码没有错误,则会生成一个.class 文件,如果有错误就会报错。

注意:对修改后的源文件要重新进行编译才可以

标签:01,Java,JDK,Hello,编译,概述,java,class
From: https://www.cnblogs.com/binbinzhidao/p/17672554.html

相关文章

  • 2023-09-01:用go语言编写。给出两个长度均为n的数组, A = { a1, a2, ... ,an }, B = { b1
    2023-09-01:用go语言编写。给出两个长度均为n的数组,A={a1,a2,...,an},B={b1,b2,...,bn}。你需要求出其有多少个区间[L,R]满足:数组A中下标在[L,R]中的元素之和在[La,Ra]之中,数组B中下标在[L,R]中的元素之和在[Lb,Rb]之中。输入:第一行有一个正整数N(1<=N<=100000),代表两......
  • 2023-09-01:用go语言编写。给出两个长度均为n的数组, A = { a1, a2, ... ,an }, B = { b1
    2023-09-01:用go语言编写。给出两个长度均为n的数组,A={a1,a2,...,an},B={b1,b2,...,bn}。你需要求出其有多少个区间[L,R]满足:数组A中下标在[L,R]中的元素之和在[La,Ra]之中,数组B中下标在[L,R]中的元素之和在[Lb,Rb]之中。输入:第一行有一个正整数N(1<=N<=10000......
  • BUUCTF [安洵杯 2019]easy_web
    试试模板注入发现,不行,然后伪协议,不行,再爆破目录也不行。从?img=TXpVek5UTTFNbVUzTURabE5qYz0入手,可能是base64编码。base64解码:(不知道为什么别的WP上变成这样了,否则解不出来)TXpVek5UTTFNbVUzTURabE5q得到:MzUzNTM1MmU3MDZlNj再base64解码:MzUzNTM1MmU3MDZl得到:353535......
  • 【230901-7】有8位学生,其中小学生2名,初中生3名,高中生3名,现将他们排成一列,要求2名小学
    【230901-7】有8位学生,其中小学生2名,初中生3名,高中生3名,现将他们排成一列,要求2名小学生相邻,3名初中生相邻,3名高中生任意两名都不相邻,则不同排法有几种?......
  • OGG-01496 Failed to open target trail file ./dirdat/ra000002, at RBA 2179
    1.问题描述在启动OGG源端的投递进程时,报错:OGG-01496OGG-01496Failedtoopentargettrailfile./dirdat/ra000002,atRBA2179 2.原因分析目标端trail文件丢失,查看目标端的${OGG_HOME}/dirdat下确实没有文件存在。3.解决办法源端OGG:alter extract pump1 etrollover......
  • tomcat 安装笔记 20230901
    war位置/usr/local/tomcat8_1/webapps/tomcat位置71.170/usr/local/tomcat8_1/给了点工具包位置/usr/local/tool/启动tomcatcd/usr/local/tomcat8_1/bin/./startup.sh没有权限启动cd/usr/local/tomcat8_1/bin/chmode777*启动失败没有java环境,安装下cd/usr/l......
  • [代码随想录]Day33-动态规划part01
    题目:509.斐波那契数思路:动规五部曲:这里我们要用一个一维dp数组来保存递归的结果确定dp数组以及下标的含义dp[i]的定义为:第i个数的斐波那契数值是dp[i]确定递推公式为什么这是一道非常简单的入门题目呢?因为题目已经把递推公式直接给我们了:状态转移方程dp[i]=dp[i-......
  • P4344 SHOI2015 脑洞治疗仪
    \(P4344\)[\(SHOI2015\)]脑洞治疗仪一、题目描述曾经发明了自动刷题机的发明家\(SHTSC\)又公开了他的新发明:脑洞治疗仪——一种可以治疗他因为发明而日益增大的脑洞的神秘装置。为了简单起见,我们将大脑视作一个\(01\)序列。\(1\)代表这个位置的脑组织正常工作,\(0\)代表......
  • ogg 的抽取进程 2015-06-17 05:51:08 ERROR OGG-02077
    报错信息如下HowtoresolveExtractAbendingWithOGG-02077Error(DocID2037420.1)这种情况是把抽取进程注册到数据库中了,你又强制启动相同的抽取进程,就会与数据库中注册的进程冲突,你可以执行下边语句删除数据库中抽取进程Stepstoclearthespecificextractcomponen......
  • freeswitch 在visualstudio 2017 中编译运行
    1、visualstudio使用2017版本的2、下载 https://github.com/PerkinsZhu/freeswitch/tree/v1.8 源码   错误处理:一、 下载地址:https://wixtoolset.gallerycdn.vsassets.io/extensions/wixtoolset/wixtoolsetvisualstudio2017extension/1.0.0.22/1668223938167/......