【java入门系列一】java基础

news2024/9/22 15:42:21

学习记录🤔

  • 写在前面
  • JDK\JRE
    • Python有没有虚拟机?
  • 第一个code
  • 规范
  • 学习方法
  • 转义符号
  • 注释
  • 讨论总结
    • 谢谢点赞交流!(❁´◡`❁)

更多代码: Gitee主页:https://gitee.com/GZHzzz
博客主页: CSDN:https://blog.csdn.net/gzhzzaa

写在前面

面向工作coding!
目标成为一个算法开发人员!
在此学习记录监督😊

JDK\JRE

  1. JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具(JConsole,Web Services等工具软件),还包含了Java基础的类库(即Java API 包括rt.jar)

  2. JVM(Java Virtual Machine)就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,包含在JDK中,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。
    在这里插入图片描述

  3. 只有JVM还不能直接执行class文件,因为在解释class的时候JVM需要调用解释所需要的类库lib,而jre包含lib类库。在JDK下面的的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。

  4. 我们利用JDK(调用JAVA API)开发了属于我们自己的JAVA程序后,通过JDK中的编译程序(javac)将我们的文本java文件编译成JAVA字节码(class文件),在JRE(JVM+lib)上运行这些JAVA字节码,JVM解析这些字节码,映射到CPU指令集或OS的系统调用。
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/200fad1876344b3588807b44628cf257.png在这里插入图片描述

Python有没有虚拟机?

事实上,Python 程序在执行过程中同样需要编译(Compile),编译产生的结果称之为字节码,而后由 Python 虚拟机逐行地执行这些字节码。所以,Python 解释器由两部分组成: 编译器和虚拟机。
在这里插入图片描述
Java 在程序执行时必须使用 javac 对源代码进行编译,但是并不直接编译成机器语言,而是和 Python 一样,编译成字节码,而后由 JVM 进行执行。从这一点上来看,Python 和 Java 非常类似,只不过 Python 的编译过程由解释器完成,用户也可以手动的对 Python 源代码进行编译,生成 .pyc 文件,节省那么一丢丢的时间。
Java是静态语言内部的编译器进行翻译JavaCode为字节码文件,然后由执行器执行字节码文件。而Python的编译器,美其名曰打工皇帝,身兼数职,一遍翻译一边执行,这叫动态语言,并且居然翻译成字节码Python的字节码都比Java的短,虽然是打工皇帝但是一个人的力量还是不如JVM分工的快。不过他俩都是跨平台的就是因为虚拟机的机制,就像平头插座插不了三角头,但是装个转换器啦。使用转换器的原因就是要提供一个和宿主平台无关的编译环境,所以java不是解释语言也不是编译语言,它属于二合一,但是python作为动态语言也提供了各种优化机制保留.pyc文件等等,所以现在编译语言跟解释语言的界限越来越不明显,这么来看她确实该叫解释器,翻译加运行。

第一个code

public class Hello {
//Hello是一个类,public共有的类
//类名大驼峰
    public static void main(String []args) {
    //主方法,程序入口
    //方法名小驼峰
       System.out.println("Hello World!");
    }
}

在这里插入图片描述

规范

在这里插入图片描述

  • 编译后每一个类,都生成一个.class文件
  • 共有类和文件名应该一致
  • ;代表一行语句的结束

学习方法

需求-查资料-新技术-新知识点和语法-快速入门增删改查-研究具体细节-返回需求

  • 技术为需求服务

转义符号

tab快速补齐命令行
在这里插入图片描述

  • \表示一个\,第一个为转义,第二个为\
  • 写目录需要\表示分隔

注释

单行://文字
多行:/文字/
文档注释:为类进行注释

/**
*author
*version
*/
public class Hello {
//Hello是一个类,public共有的类
//类名大驼峰
    public static void main(String []args) {
    //主方法,程序入口
    //方法名小驼峰
       System.out.println("Hello World!");
    }
}

讨论总结

最大的困难是坚持
知识体系很重要,在体系内学习会简单有效!
和算法不一样,开发这块不需要你觉得,现成的东西一大把,学会了就能跟着做!
定目标,沉下心,扎下去!
时间还很多,每天保持思考、保持进步,日积跬步,足以至千里!

  • Fighting!😎

在这里插入图片描述

while True:
	Go life

在这里插入图片描述

谢谢点赞交流!(❁´◡`❁)

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

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

相关文章

13---SpringBoot整合JWT,实现登录和拦截

1、 JWT简介 什么是JWT? JWT(JSON Web Token)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。它将用户信息加密到token里,服务器不保存任何用户信息。服务器通过使用保存的密钥验证token的正确性,只要正确即通过验证&…

在Ubuntu上安装Azure DevOps代理程序

Contents1 概述2. 安装Ubuntu 18.04操作系统3. 安装Azure DevOps Server 代理3.1 安装Azure DevOps Server 代理3.2 以服务方式运行代理1. 概述Ubuntu是一个以桌面应用为主的Linux操作系统,目前在不适用微软Windows的企业中,ubuntu被广泛应用在个人电脑中…

网络原理4 数据链路层

文章目录mac地址网络原理的总结在数据链路层中,最主要的就是以太网协议这里的目的IP和原地址都是mac地址 mac地址 首先要知道什么是Mac地址,mac地址也叫做物理地址或以太网地址,它是一个用来确认网络设备位置的位置,一个网卡就会…

javaWeb——第一章概述

目录 1.1 软件的分类 1.2 软件架构 1.3 web软件 1.4 web程序 web服务器: Tomcat: 扩展 Java web就是窗口和程序之间的交互: 1.1 软件的分类 系统软件 应用软件 介于两者之间的中间件(插件) 1.2 软件架构 B/S 服务器与浏…

ZC706P+ADRV9009连接RADIOVERSE详解之三

做好SD卡映像,连接好硬件之后,我们就可以尝试软件操作了。 步骤1:设置好网络 打开软件界面我们看到,板子默认的地址为192.168.1.10 端口号为55555.我们一定也设置跟板子连接的以太网口处于192.168.1网段,并且子网掩码…

【ESP32+freeRTOS学习笔记-(四)任务调度机制】

目录1 、什么是任务的调度机制1.1 概念1.2 三种算法1.3 决定算法的宏2、基本词条解释3、调度算法解释3.1 具有时间片的优先级抢先调度 Prioritized Pre-emptive Scheduling with Time Slicing3.1.1 图解高优先级任务抢占低优先级任务3.1.2 图解具有时间片的优先级抢占3.1.3 总结…

如何通过少量样本推断整体业务情况

在产品运营中非常常见,为了能够解决大量数据时分析效率急剧下降的窘况,我们就必须能够去分析非常小量样本的特征,再用这些特征去评估海量总体数据的特征,我们叫它样本检验。 样本,是指我们需要“分析或考察的数据”的…

MAC(m1)-安装Redis6.2.8

Redis官网:Download | Redis 我准备下载7以前的版本 下载放到如下位置 在这个目录打开终端: 编译测试,执行命令:sudo make test 等待了好久,估计好几分钟 最后出现: 下面准备安装redis,编译安…

计算机网络的定义和性能指标

目录计算机网络的定义计算机网络的分类计算机网络的性能指标速率带宽吞吐量时延时延带宽积往返时间利用率丢包率计算机网络的定义 计算机网络的精确定义并未统一;计算机网络的最简单的定义是:一些互相连接的、自治的计算机的集合; 互连&…

Kubernetes组件_Scheduler_02_二次调度

文章目录一、前言二、二次调度/运行期间调度Descheduler2.1 机器上安装helm2.2 每个机器都要准备好镜像2.3 使用helm部署三、Descheduler需要注意的点(相关理论知识)3.1 descheduler 调度策略3.2 descheduler 有哪些不足3.2.1 基于 Request 计算节点负载并不能反映真实情况3.2.…

【Lua】xLua逻辑热更新

1 前言 Lua基础语法 中系统介绍了 Lua 的语法体系,ToLua逻辑热更新 中介绍了 ToLua 的应用,本文将进一步介绍 Unity3D 中基于 xLua 实现逻辑热更新。 逻辑热更新是指:在保持程序正常运行的情况下,在后台修改代码逻辑,修…

子查询+「EXISTS」 以及 组合查询UNION ALL

目录方便的子查询及EXISTS使用子查询作为计算手段使用子查询过滤数据(IN)使用子查询过滤数据(EXISTS)组合查询UNION ALL如何使用UNION ALL合并多个结果集如何使用UNION去除集合的重复记录如何合并2个以上的结果集?方便…

Hudi(6):Hudi集成Spark之spark-shell 方式

目录 0. 相关文章链接 1. 启动 spark-shell 2. 插入数据 3. 查询数据 3.1. 转换成DF 3.2. 查询 3.3. 时间旅行查询 4. 更新数据 5. 增量查询 5.1. 重新加载数据 5.2. 获取指定beginTime 5.3. 创建增量查询的表 5.4. 查询增量表 6. 指定时间点查询 7. 删除数据 …

Python学习基础笔记六十二——反射2

1、 isinstanace(obj, cls) # 检查是否obj是否是类cls的对象: class Foo(object):passobj Foo()print(isinstance(obj, Foo)) 结果返回:True。 issubclass(sub, super) # 检查sub类是否是 super 类的派生类 class Foo(object):passclass Bar(F…

python详解(5)——类,类,还是类

目录 🏆一、前言 🏆二、类 🚩1、面向对象到底是什么 🚩2、数据成员and访问,汉堡店大升级(超难) 👍①、类变量(超难) 👍②、实例变量 &#x1f6a9…

A Latent Transformer for Disentangled Face Editing in Images and Videos翻译

点击下载论文 代码地址 图1 我们将真实图像投影到StyleGAN生成器的潜空间,并在编码的潜码上实现连续的解纠缠属性编辑。从原始图像和投影图像中,我们可以连续编辑一系列属性,例如:“微笑”、“刘海”、“拱形眉毛”、“年龄”、…

分布式对象存储设计原理

保存像图片、音视频这类大文件就是对象存储。不仅有很好的大文件读写性能,还可通过水平扩展实现近乎无限容量,并兼顾服务高可用、数据高可靠。 对象存储“全能”,主要因,对象存储是原生分布式存储系统,相对于MySQL、R…

[Linux]yum安装工具和vim编辑器

🥁作者: 华丞臧. 📕​​​​专栏:【LINUX】 各位读者老爷如果觉得博主写的不错,请诸位多多支持(点赞收藏关注)。如果有错误的地方,欢迎在评论区指出。 推荐一款刷题网站 👉 LeetCode刷题网站 文…

每日一问-ChapGPT-20230101-关于新年的规划

文章目录每日一问-ChapGPT系列起因每日一问-ChapGPT-20230101-关于新年的规划优秀的人,新年之初做哪些规划疫情时代,如何更好的保护好自己有哪些运动可以提升抵抗力冥想的具体实现步骤为什么制定了年度规划但往往完成不了如何克服看手机刷视频的习惯当日…

聊聊八卦,当年的顶流明星事件是如何把公司的缓存架构“击垮”的?

V-xin:ruyuan0330 获得600页原创精品文章汇总PDF 目录 一、为什么要用缓存集群二、20万用户同时访问一个热点缓存的问题三、基于流式计算技术的缓存热点自动发现四、动加载为JVM本地缓存五、限流熔断保护六、总结 一、为什么要用缓存集群 这篇文章,咱…