Java学习笔记(一)

目录

一、Java概述

(一)Java技术体系平台

(二)Java重要特点

(三)Java运行机制及运行过程

(四)JDK

(五)JRE

二、Java的快速入门

(一)编译

(二)运行

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

四、Java转义字符

五、文档注释

​六、Java代码规范

 七、DOS命令

一、Java概述

(一)Java技术体系平台

1、Java SE(Java Standard Edition)标准版

支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE。

2、Java EE(Java Enterprise Edition)企业版

是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE。

3、Java ME(Java Micro Edition)小型版

支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,此版本以前称为J2ME。

(二)Java重要特点

1、Java语言是面向对象的(oop)。

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

3、Java语言是跨平台性的(因为有Java虚拟机,JVM),即一个编译好的.class文件可以在多个系统下运行,这种特性称为跨平台。假如编写了一个test.java的文件,编译后生成的文件是test.class,这个文件既可以在windows上运行,又可以在linux上运行,不受平台的影响。

4、Java语言是解释型的。

解释型语言:javascript、PHP、java

编译型语言:C/C++

区别:解释型语言编译后的代码不能直接被机器执行, 需要解释器来执行;编译型语言编译后的代码可以直接被机器执行。

(三)Java运行机制及运行过程

Java核心机制——Java虚拟机(java virtual machine)

1、JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器,包含在JDK中。

2、对于不同的平台,有不同的虚拟机。

3、Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”

(四)JDK

1、JDK(Java Development Kit,Java开发工具包)

JDR = 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的快速入门

public class Hello {public static void main(String[] args) {System.out.println("hello,world!");}
}

(一)编译

 javac Hello.java

1、有了java源文件,通过编译器将其编译成JVM可以识别的字节码文件。

2、在源文件目录下,通过javac编译工具对Hello.java文件进行编译。

3、如果程序没有错误,没有任何提示,在当前目录下会出现一个Hello.class文件,该文件称为字节码文件,也是可以执行的java的程序。

(二)运行

1、有了可执行的java程序(Hello.class字节码文件)

2、通过运行工具java.exe对字节码文件进行执行,本质就是.class装载到JVM机执行。

注意:对修改后的Hello.java源文件需要重新编译,生成新的class文件后,再进行执行,才能生效。

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

1、Java源文件以.java为扩展名。源文件的基本组成部分是类(class)。

2、Java应用程序的执行入口是main()方法。它有固定的书写格式:public static void main(String[] args) { ... }

3、Java语言严格区分大小写。

4、Java方法由一条条语句构成,每个语句以“;”结束。

5、大括号都是成对出现的,缺一不可。

6、一个源文件中最多只能有一个public类,其他类的个数不限(编译后,每一个类,都对应于一个.class)。

7、如果源文件包含一个public类,则文件名必须按该类名命名。

8、一个源文件中最多只能有一个public类,其他类的个数不限。也可以将main方法写在非public类中,然后指定运行非public类,这样入口方法就是非public的main方法。

四、Java转义字符

Java常用的转义字符

1、\t :一个制表位,实现对齐的功能

2、\n:换行符

3、\\:一个\

4、\":一个"

5、\':一个'

6、\r:一个回车 System.out.println("小哈\r福建");

public class ChangeChar {public static void main(String[] args){// 制表符System.out.println("福建\t浙江\t广东");// 换行符System.out.println("Tom\nJack\nLinda");// 输出\System.out.println("E:\\360MoveData\\Users\\BLACK\\Desktop\\学习资料\\Java\\Java基础");// 输出"System.out.println("小鹿说:\"你很棒!\"");// 输出'System.out.println("小鹿说:\'你很棒!\'");// 一个回车System.out.println("小鹿是很\r棒的");System.out.println("小鹿是很\r\n棒的");}
}

练习:

public class ChangeCharExer01 {public static void main(String[] args){System.out.println("书名\t作者\t价格\t销量\n");System.out.println("三国\t罗贯中\t120\t1000");}
}

五、文档注释

注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档,一般写在类。 

javadoc -d 文件夹名 -xx -yy Demo.java

/*** @author routine* @version 1.0*/
public class JavadocComment {public static void main(String[] args){}
}

六、Java代码规范

1、类、方法的注释,要以javadoc的方式来写。

2、非Java Doc的注释(单行注释/多行注释),往往是给代码的维护者看的,着重告诉读者为什么这样写,如何修改,注意什么问题等。

3、使用tab操作,实现缩进,默认整体向右边移动,使用shift+tab整体向左移动。

4、运算符和=两边习惯性加一个空格。比如2 + 4 * 5 + 345 - 89

5、源文件使用utf-8编码

6、行宽度不要超过80字符

7、代码编写次行风格和行尾风格

 七、DOS命令

Dos:Disk Operating System磁盘操作系统

常用的dos命令:

1、查看当前目录有什么:dir

2、切换到其他盘下:cd

 

3、切换到当前盘的其他目录下:

4、切换到上一级:

5、切换到根目录:

 6、查看指定的目录下所有的子级目录(目录树):

7、清屏:cls

8、退出DOS:exist

9、其他指令:md(创建目录),rd(删除目录),copy(拷贝文件),del(删除文件),echo(输入内容到文件),type,move(剪切):

 

 

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

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

相关文章

墨西哥专线空加派一条龙服务性价比高吗?

随着全球贸易的不断发展,越来越多的企业开始关注跨境物流,以满足国际市场的需求。墨西哥专线空加派一条龙服务作为一种便捷、高效的物流解决方案,越来越受到企业的青睐。那么,墨西哥专线空加派一条龙服务的性价比高吗?本文将从服…

企业门户的必备选择,WorkPlus的定制化解决方案

在当今数字化时代,企业门户成为了企业内外沟通与协作的重要基础设施。WorkPlus作为领先的品牌,为企业提供了一站式的企业门户解决方案,旨在提升企业形象、改善内外部沟通与协作效率。本文将深入探讨WorkPlus如何通过定制化的设计,…

【Java-LangChain:使用 ChatGPT API 搭建系统-8】搭建一个带评估的端到端问答系统

第八章,搭建一个带评估的端到端问答系统 在本章中,我们将搭建一个带评估的端到端问答系统,这个系统综合了之前多节课的内容,并加入了评估过程。 检查输入,确认其是否能通过审核 API 的审核。 如果通过了审核&#xf…

fastadmin 后台列表数据多表查询筛选

记录一下fastadmin后台列表数据连表查询筛选提示: 1:下拉框方式搜索 示例: 在对应js文件中添加如下代码: 代码: {field: s.area_id,title: __(所属片区),visible: false,//不显示在列表中operate: ,searchList: $.…

Python开发中如何优雅的处理多重if...elif...判断

回眸那年,懵懂的我以为学会了if判断,就能轻易判断世间所有逻辑进行处理。时至今日,我依然为我当年的想法所骄傲😂。工作中多重if...elif...经常会遇到,我也像如下的方式写了N1次,内容如下: use…

Java架构师系统架构设计服务拆分

目录 1 服务拆分和子系统模块拆分1.1 服务化架构的优势2 描绘系统蓝图里面的详解服务2.1 为什么拆分服务3 服务拆分的基本要求3.1 服务功能是自包含的3.2 服务呢应该具备独立性和专业性3.3 服务是无状态的3.4 服务之间采用轻量级的通讯机制4 服务拆分的基本方法4.1 按业务边界拆…

centos7.6 安装 rlwrap-0.45报 Requires: /usr/bin/python3

centos7 问题概述 方便翻找历史命令 问题原因 解决方案 1、安装python3 ,readline 2、下载 rlwrap-0.45.2-2.el7.x86_64.rpm 安装时报: [root@opengauss01 ~]# yum -y install rlwrap-0.45.2-2.el7.x86_64.rpm Loaded plugins: fastestmirror Examining rlwrap-0.45.…

关于Jupyter notebook 创建python3 时进去不能重命名问题及不能编程问题

首先写这篇博客时,已经被这个问题折磨了三天,看了很多博客,其实解决这个问题的关键就是要么没有下pyzmq或者等级太高,要么等级太低,首先我会按照我思路来。 问题如图: 1.自动换行 2.不能重命名 我的解决办…

MOM与MES管理系统有哪些本质上的区别

随着企业业务的不断发展,许多制造企业开始面临车间管理失控、生产不透明等问题。这时候,很多企业选择上线MES生产管理系统来提高生产管理水平。然而,随着企业业务的不断拓展,MES系统也逐渐暴露出其局限性。于是,MOM平台…

水库安全监测方案(实时数据采集、高速数据传输)

​ 一、引言 水库的安全监测对于防止水灾和保障人民生命财产安全至关重要。为了提高水库安全监测的效率和准确性,本文将介绍一种使用星创易联DTU200和SG800 5g工业路由器部署的水库安全监测方案。 二、方案概述 本方案主要通过使用星创易联DTU200和SG800 5g工业路…

数字化转型的必备工具:智能呼叫中心系统的应用

数字化转型已经成为企业发展的必然趋势,在这个过程中,智能呼叫中心系统成为了一个不可或缺的工具。智能呼叫中心系统通过整合各种通信渠道和自动化技术,为企业提供了高效、智能的客户服务解决方案。 首先,系统能够集成多种通信渠…

矩阵置零

矩阵置零 题目: 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2&#…

ws升级为wss

需求:项目中需要使用netty,本地测试的时候使用的是ws,然后要部署到服务器上,使用https连接,https下就不能用ws了,必须升级到wss 1.阿里云申请免费证书 2.保存证书到本地目录 3.修改代码 SslUtil 工具类…

集成学习

集成学习(Ensemble Learning) - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/27689464集成学习就是组合这里的多个弱监督模型以期得到一个更好更全面的强监督模型,集成学习潜在的思想是即便某一个弱分类器得到了错误的预测,其他的弱分类器…

网络爬虫中的代理技术:socks5代理和HTTP代理

网络爬虫是一种非常重要的数据采集工具,但是在进行网络爬虫时,我们经常会遇到一些限制,比如IP封锁、反爬虫机制等,这些限制会影响我们的数据采集效果。为了解决这些问题,我们可以使用代理服务器,其中socks5…

关于打造安卓测试机的方法以及常见问题的解决方式

摘要: 本文主要讲解如何打造安卓测试机,并刷机google原生系统、部署Magisk对测试机进行root的常用方式;并对一些常见问题进行思路解答。本文适合新手学习,大佬请绕过 本次实验使用的设备及环境如下: Nexus 5x 测试机…

transformer系列5---transformer显存占用分析

Transformer显存占用分析 1 影响因素概述2 前向计算临时Tensor显存占用2.1 self-attention显存占用2.2 MLP显存占用 3 梯度和优化器显存占用3.1 模型训练过程两者显存占用3.2 模型推理过程两者显存占用 1 影响因素概述 模型训练框架:例如pytorch框架的cuda context…

深入了解归并排序:原理、性能分析与 Java 实现

归并排序(Merge Sort)是一种高效且稳定的排序算法,其优雅的分治策略使它成为排序领域的一颗明珠。它的核心思想是将一个未排序的数组分割成两个子数组,然后递归地对子数组进行排序,最后将这些排好序的子数组合并起来。…

一个开源的安卓相机:OpenCamera

原网址 Open Camera download | SourceForge.net 我也上传了一个 https://github.com/quantum6/Android-OpenCamera

TensorFlow入门(十四、数据读取机制(1))

TensorFlow的数据读取方式 TensorFlow的数据读取方式共有三种,分别是: ①预加载数据(Preloaded data) 预加载数据的方式,其实就是静态图(Graph)的模式。即将数据直接内嵌到Graph中,再把Graph传入Session中运行。 示例代码如下: import tensorflow.compat.v1 as tf tf.disabl…