JavaSE——Java介绍与环境变量简述

第1节 Java介绍

1、Java的起源与演变

2、Java体系与特点

Java体系

  • Java SE:标准版:各应用平台的基础,桌面开发和低端商务应用的解决方案。

  • Java EE:企业版,以企业为环境而开发应用程序的解决方案。

  • Java ME:微型版,效力于消费产品和嵌入式设备的最佳解决方案。

Java的特性

  • 一种纯面向对象 的编程语言;

  • 一种与平台无关(跨平台 )的语言;(它提供了在不同平台下运行的解释环境)

  • 一种健壮 的语言,吸收了C/C++语言的优点;

  • 有较高的安全 性。(自动回收垃圾,强制类型检查,取消指针)

3、Java跨平台原理

在这里插入图片描述

3. 1 Java虚拟机(Java Virtual Machine)

在这里插入图片描述

JVM可以理解成一个可运行Java字节码的虚拟计算机系统:

  • 它有一个解释器组件,可以实现Java字节码和计算机操作系统之间的通信

  • 对于不同的运行平台,有不同的JVM

JVM屏蔽了底层运行平台的差别,实现了“一次编译,随处运行”。

在这里插入图片描述

3.2 垃圾回收器(GC)(Garbage Collection)

    垃圾回收: 不再使用的内存空间应当进行回收。

   在C/C++等语言中,由程序员负责回收无用内存。Java语言消除了程序员回收无用内存空间的责任;**JVM提供了一个系统线程,用于跟踪存储空间的分配情况,检查并释放那些可以被释放的存储空间** 。垃圾回收器在Java程序运行过程中自动启用,程序员无法精确控制和干预。

3.3 Java SE的组成概念图

在这里插入图片描述

3.4 JDK

JDK(Java Development Kits)——Java开发工具集

  • JRE(Java Runtime Environment)Java运行时环境

    - JVM

    - Java API

    - 三项主要功能:

        - 加载代码:由类加载器(class loader)完成;

        - 校验代码:由字节码校验器(byte code verifier)完成;

        - 执行代码:由运行时解释器(runtime interpreter)完成。

  • Java编译器(javac.exe)

  • Java运行时解释器(java.exe)

  • Java文档化工具(javadoc.exe)

  • 其他工具及资源

补充:

一、用户变量与系统变量

Windows中有两种环境变量:用户变量和系统变量,它们的区别如下:

  1. 环境变量不区分大小写;

  2. 系统变量对所有用户有效,用户变量只对当前用户有效;

  3. 名称是变量,值是里面的内容,也就是通过变量存储了想要存储的内容,方便调用;

  4. 系统和用户变量的Path:告诉系统可执行文件放在什么路径;

  5. Windows系统在执行用户命令时,若用户未给出文件的绝对路径,首先在当前目录下寻找相应的可执行文件、批处理文件;若当前目录找不到对应名的程序,在系统变量的PATH路径中,依次寻找对应的可执行程序文件;

  6. 如果系统变量的PATH路径找不到,再到用户变量的PATH路径中寻找(若同时包含,优先执行系统变量中的);

  7. 每次新加了命令以后,要确定保存,再重启cmd;

  8. 在cmd中输出环境变量:ECHO %变量名%。

二、环境变量Path

为执行的指令提供更方便的一种方式

在这里插入图片描述

这里的“内部”指的是smile文件夹路径,“外部”指的是环境变量中的路径;如果不将可执行文件所在的路径加入环境变量,那么只能在该可执行文件所在的文件夹下执行它,在别的路径下就不能执行它;而如果加入了环境变量中,那么在任何路径都可以执行这个可执行文件。

(先找“内部”,再找“外部”)

通过添加环境变量的内容,可以通过命令的方式来执行可执行文件。

三、JAVA_HOME环境变量

如果将java的路径放在Path下,当需要频繁的修改它时,很容易错误地改动了其他内容,所以先新建一个JAVA_HOME环境变量,将java路径放在JAVA_HOME下,再把JAVA_HOME放到PATH下,就不用频繁改动PATH了,只要改JAVA_HOME即可。

在这里插入图片描述

在这里插入图片描述

四、第一个Java程序

在这里插入图片描述

在这里插入图片描述

三种注释:

  1. 单行注释://

  2. 多行注释://

  3. 文档注释:/**…*/,可以把鼠标放在函数或类上,查看其作用

代码语句的分类:

  1. 结构定义语句

  2. 功能执行语句,必须以英文分号结束

在这里插入图片描述

{}是结构定义语句,sout是功能执行语句。

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

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

相关文章

深度:中国智能制造分析报告

来源:精智工厂亚洲正受到自动化、智能化大潮冲击。国际劳工组织调研发现,越南、柬埔寨、菲律宾和印度尼西亚的工人的失业风险最高,据估计这几个区域约50%的工人工作可能在未来20年被自动化取代。亚洲尤其是中国作为制造业的重要区域&#xff…

JavaSE——Java基础语法(二进制、变量、方法(函数)、运算符、转义字符)

第2节 基础语法 一、二进制 1.1 二进制介绍 计算机中的数据都以二进制数字保存。 二进制 :逢二进一,即只有0、1两个值。如十进制的10在计算机内保存为二进制的1010。 计算机中信息的存储单位: 位(Bit)&#xff1a…

我们离爱因斯坦想了解的“上帝的思想”,还有多远?

来源:原理1925年,爱因斯坦在与一位名为Esther Salaman的年轻学生一同散步的途中,分享了他的一个核心指导思想:“我想知道上帝是如何创造这个世界的。我对这个或那个现象,这个或那个元素的能谱不感兴趣。我要知道的是他…

城市大脑与智慧城市前沿趋势 主题论坛 |未来科技大讲堂 第12期

近年来,智慧城市建设出现新的动向,包括城市大脑、城市云脑、城市超级大脑、城市超脑、城市神经网络等“泛城市大脑”概念也大量涌现。杭州、上海、北京、广州等城市各自提出和开展了不同城市大脑建设方案,其中上海市开展了以建设城市神经元系…

JavaSE——数组基础(创建格式、下标、获取长度、常见问题、多维数组)

第4节 数组 一、概述 数组是相同数据类型的多个数据的容器。这些元素按线性顺序排列。所谓线性顺序是指除第一个元素外,每一个元素都有唯一的前驱元素;除最后一个元素外,每一个元素都有唯一的后继元素。(“简单理解就是&#xff…

MATLAB将颜色反转

如下图: 若需要将其转换为灰度图,则用colormap(gray): 但若想将上面那幅灰度图颜色反转,即白色部分变黑,黑色部分变白,则用colormap(flipud(gray)):

AR/VR逐渐回暖 联合安防步入未来

来源:VR每日必看2019年,AR/VR市场在走过萌芽、兴起、狂热与泡沫破灭之后,开始逐渐复苏,相关芯片、屏幕、传感器等关键零部件也取得了不少进展,行业有望再次迎来高速增长。相较于C端市场,在B端,A…

JavaSE——面向对象基础(思想、类与对象、构造方法、重载、匿名对象)

第1节 面向对象基础 一、面向对象思想 1.1 概述 面向对象(Object Oriented)是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发,是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段的产物。面向对…

谷歌发布颠覆性研究:不训练不调参,AI自动构建超强网络,告别炼丹一大步...

来源:凹非寺 机器学习全靠调参?这个思路已经过时了。谷歌大脑团队发布了一项新研究:只靠神经网络架构搜索出的网络,不训练,不调参,就能直接执行任务。这样的网络叫做WANN,权重不可知神经网络。它…

JavaSE——面向对象进阶(封装、this、static、代码块、包、权限修饰符、main方法详解)

第2节 面向对象进阶 一、封装与private 概述: 封装的意义在于保护或者防止代码(数据)被我们无意中破坏。保护成员属性,不让类以外的程序直接访问和修改。封装原则: 隐藏对象的属性和实现细节,仅对外公开访…

孙正义:互联网流量将转化为智能AI流量,我的时代终于来了

“今后,增加软银集团的股东价值的成长引擎是什么呢?从上面的营业利润的增长来看,SVF(软银愿景基金)贡献了80%。SVF是SoftBank2.0最重要的经营引擎。首先,大约2年时间,SVF的投资对象已经超过了80…

JavaSE——面向对象高级(继承、final关键字、抽象类与接口、多态、Object类、内部类、包装类、可变参数)

第3节 面向对象高级 一、继承 1.1 概述和使用 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继…

word的公式后加编码后自动变小

如图所示,在公式后面加编码后公式也变小了: 加编码前: 加编码后: 采用样式分隔符(Ctrlaltenter)即可解决,输完公式后,按enter转行,输入你要的东西(编号什么的…

人工智能70年:科幻和现实的交融

文章素材来源:BBC图片来源:网络【导读】人类飞跑着进入人工智能(AI)时代。粗略估算现在人们日常生活中有20多种寻常的AI,从垃圾邮件过滤器到叫车软件。AI被分为两类,这些执行具体任务的AI属于“弱人工智能”…

vim 插件之commentary

下载地址 http://www.vim.org/scripts/script.php?script_id3695 如果是使用vundle来管理这个插件的话,你可以添加如下配置 tpope/vim-commentary 这个插件可以根据你当前打开的文件类型,来选择相应的注释方式。 使用的命令是 \\位移 比如,…

JavaSE——异常处理(异常简介、try-catch-finally、throws、throw)

第4节 异常处理 异常处理学习的目标: 明确说明是异常(重点) 能辨识出常见的异常及其含义(熟悉) 理解异常产生的原理(了解) 能处理异常(重点) 能够自定义异常&#x…

专访「算法之父」Michael Saunders:人工智能未来的突破点可能在自动驾驶

来源:雷锋网 AI 科技评论雷锋网 AI 科技评论按,4 月 25 日,在由涂鸦智能联合知名财经媒体《新财富》、人工智能领域知名媒体《全球智能化商业》共同举办的「全球智能化商业峰会」上,斯坦福大学荣誉教授、新西兰皇家学会荣誉成员、…

从指南针到北斗:中国导航系统促进世界互联互通

6月11日,在维也纳联合国国际会议中心,联合国外层空间事务办公室主任迪皮波(右)参观中国古代计时装置水运仪象台。本报记者 冯雪珺摄来源:人民日报核心阅读中国卫星导航系统管理办公室在维也纳联合国国际会议中心举办“…

JavaSE——常用类库(上)(泛型、Objects、Math、ArraysBigDecimal类)

第1节 常用类库(上) 面向对象更多是思想上的东西,常用类库更多是工具上的东西,熟能生巧,多整理笔记。 一、泛型 1.1 概述 泛型,即“参数化类型”。就是将类型由原来具体类型进行参数化 ,类似…

朗兰兹纲领:关于数学大一统的伟大构想

麦克斯韦方程组来源:今日头条我们经常聊到物理学家都在追寻物理学的大一统,物理学的第一次大一统是麦克斯韦的麦克斯韦方程组,将电学与磁学相统一,建立了电磁学理论,后来,爱因斯坦想继续完成麦克斯韦未竟之…