首页 > 编程语言 >01-JAVA入门

01-JAVA入门

时间:2023-01-07 20:11:20浏览次数:52  
标签:01 java 入门 JDK 代码 Hello Java JAVA

一、JAVA三大版本

  1. JAVA SE:它是JAVA的标准版,是整个JAVA的基础和核心,这是我们主要学习的一个部分,也是JAVAEE和JAVAME技术的基础,主要用于开发桌面应用程序。学会后可以做一些简单的桌面应用如:扫雷,连连看等。
  2. JAVA ME:它是JAVA的微缩版,主要应用于嵌入式开发,比如手机程序的开发。目前来说就业范围不是很广,在一些城市可能相对的不好找工作。
  3. JAVA EE:也叫JAVA的企业版,它提供了企业级应用开发的完整解决方案,比如开发网站,还有企业的一些应用系统,是JAVA技术应用最广泛的领域。主要还是偏向于WEB的开发,而JAVA EE的基础就是JAVA SE,所以我们在学习JAVA SE的时候,基础一定要打好,因为这是最基本的,也是最核心的。

二、JDK和JRE

  • JDK
    Java 2 SDK (Development Kit)包含:JRE的超集,包含编译器和调试器等用于程序开发的文件

  • JRE
    Java Runtime Environment (JRE) 包含:Java虚拟机、库函数、运行Java应用程序和Applet所必须文件

    Java运行环境的三项主要功能:

    • 加载代码:由class loader 完成;
    • 校验代码:由bytecode verifier 完成;
    • 执行代码:由 runtime interpreter完成。
  • 区别和联系:

    ​ sdk(也就是jdk)是jre的超集,是在jre的基础上增加了编译器及其他一些开发工具。jre就是java运行时环境,包括了jvm和其它一些java核心api,任何一台电脑,只有安装了jre才可以运行java程序。
    ​ 如果只是要运行JAVA程序,只需要JRE就可以。 JRE通常非常小,也包含了JVM。如果要开发JAVA程序,就需要安装JDK。

三、JVM

​ JVM负责将java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。JAVA提供了另一种解释运行的方法JIT(just in time),可以一次解释完,再运行特定平台上的机器码,高级的JIT可以只能分析热点代码,并将这些代码转成本地机器码,并将结果缓存起来,下次直接从内存中调用,这样就大大提高了执行JAVA代码的效率。这样就实现了跨平台、可移植的功能。

  1. JVM是指在一台计算机上由软件或硬件模拟的计算机;它类似一个小巧而高效的CPU。
  2. byte-code代码是与平台无关的是虚拟机的机器指令。
  3. java字节代码运行的两种方式:
    1. 方式interpreter(解释)
    2. Just-in-time(即时编译):由代码生成器将字节代码转换成本机的机器代码,然后可以以较高速度执行。JAVA的跨平台实现的核心是不同平台使用不同的虚拟机不同的操作系统有不同的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。

四、JAVA环境搭建

百度搜索JDK,找到下载地址,浏览Oracle的网站。
JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  1. 选择版本(采用JDK8)
  2. 同意协议(流氓协议)
  3. 查看电脑的环境(64位,还是32位等等)
  4. 下载安装包
  5. 安装JDK ,JRE (改安装目录,注意规范,作为一个程序人,规范很重要。所以给电脑上环境单独
    分类最好,)
  6. 配置电脑的环境变量 :
  7. 我的电脑-->右键--->属性
  8. 环境变量-->添加 JAVA_HOME (JDK的安装地址:D:\Environmentjavajdk1.8.0_201)
  9. 配置path:%JAVA_HOME%\bin ;%JAVA_HOME%\jre\bin
  10. 测试是否安装成功:
  11. 打开cmd(命令行窗口)
  12. 输出 java –version 查看版本信息,是否成功输出!

五、hello world

  1. 新建文件Hello.java

  2. 编写Hello.java

    public class Hello{
        public static void main(String[] args){
            System.out.println("hello world");
        }
    }
    
  3. 保存文件,使用javac编译代码

    javac Hello.java
    # 生成一个新的文件Hello.class
    
  4. 运行代码

    java Hello
    

编写 Java 程序时,应注意以下几点:

  • 大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。
  • 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
  • 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
  • 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记Java 是大小写敏感的),文件名的后缀为 .java。(如果文件名和类名不相同则会导致编译错误)。
  • 主方法入口:所有的 Java 程序由 public static void main(String []args) 方法开始执行。

六、JAVA程序运行机制

  1. 编译

    利用编译器(javac)将源程序编译成字节码à 字节码文件名:源文件名.class

  2. 运行

    利用虚拟机(解释器,java)解释执行class字节码文件。

标签:01,java,入门,JDK,代码,Hello,Java,JAVA
From: https://www.cnblogs.com/haining-study/p/17033379.html

相关文章

  • 【NOI2019】序列 题解(贪心模拟费用流)
    (感觉是有史以来自己代码最好看的一次贪心模拟费用流。LG传送门Solution1经过一番思考,不难发现我们可以根据题面建图跑费用流。具体见下图:(从@cmd大佬那里薅来的。)然......
  • 【题解】P4632 [APIO2018] 新家
    码力底下,思维迟钝,我该怎么办?还是说这题太毒?题意给定一个\(n\)个商店,第\(i\)个商店的类型为\(t_i\),在\([a_i,b_i]\)时间营业,位于位置\(x_i\)。定义某一时刻一......
  • JavaScript学习笔记-对象特殊属性名需采用["属性名"]方式
      如果要使用特殊的属性名,不能采用.的方式来操作,需要使用另一种方式:  语法:对象["属性名"]=属性值  读取时也需要采用这种方式  使用[]这种形式去操作属性,更加......
  • 01. JavaScript基础知识
    一、JavaScript简介  JavaScript是一门解释型编程语言,解释型编程语言指代码不需要手动编译,而是通过解释器边解释边执行。所以,要运行JS,我们需要在计算机中安装JS的解......
  • [点分治记录] P4292 [WC2010]重建计划
    题目看到需要求的柿子首先想到分数规划。也就是二分答案,然后在check里将所有边权减去$mid$,检验是否有路经权值$\ge$0。现在问题转化成求路径长度在$[l,r]$范围内的权值......
  • JavaScript学习笔记-in运算符
    in运算符判断是否含有指定的属性  通过运算符可以检查一个对象中是否含有指定的属性,如果有返回true,没有则返回false。语法:  "属性名"in对象实例://创建一个对......
  • java中String类型的相关知识的简单总结
    java中String类型的相关知识总结一、常用方法:1.构造方法:byte数组可指定offset和length可指定charsetchar数组可指定offset和count字符序列String......
  • Linux基本操作_01
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx......
  • SparkSQL 入门简介
    在安装目录的bin目录打开spark-shell.cmd,输入如下,按tab健,查看可执行数据源spark.read.在安装目录D:\spark-3.0.0-bin-hadoop3.2\bin\input新建user.json{"username":"chen"......
  • Golang入门到实战核心编程-第五章-程序流程控制
    目录1.程序流程控制1.1程序流程个控制介绍1.2三大流程控制介绍及案例1.2.1顺序流程控制1.2.1.1顺利流程控制介绍1.2.1.2顺序流程控制流程图1.2.1.3顺序流程控制案例......