JavaSE学习day1_03, Java的发展

news2024/11/28 20:43:59

5. Java语言的扩展知识,重点

5.1 Java语言的发展

java语言前身是oka语言.

JDK5:第一个大版本号更新

JDK8企业中最常用的版本

JDK17:课程中学习的版本

特点:兼容性。

用jdk8编写的代码,用17可以运行

用jdk17编写的代码,用8不一定能运行。

如果代码中有新的特性,那么8不能运行。

如果代码中没有新的特性,那么8可以运行。

长期支持版本(后缀有个LTS):理解为正式版

长期支持版本有: 8,11,17

过渡版本:临时版本

5.2 Java的三大平台分类

JavaSE:

可以用于桌面应用开发。其他两个版本的基础.

目的:为了后面学习JavaEE打基础

JavaME:

用于嵌入式设备和小型移动设备开发。已经被安卓和IOS替代了.

JavaEE:

企业级的服务器开发。

在这个领域Java是当之无愧的No1

5.3 Java的跨平台

虚拟机:

就可以理解为是一台虚拟的电脑。跨平台原理:

我们自己编写的Java代码,是运行在虚拟机(JVM)中的。

我们自己编写的代码,不是运行在系统里面的。

针对于不同的操作系统,其虚拟机是不一样的。

5.4 JDK JRE和JVM

JVM:虚拟机,是代码真正运行的地方

JRE:包含了JVM和核心类库

JDK:包含了JRE和开发工具。

程序员:JDK

使用者:JRE

JDK>JRE>JVM

 

java特性:

 

 

 

 

 

6. Java基础语法

6.1 注释

注释就是给程序的解释说明。

6.1.1 注释的分类c

单行注释 // 注释的内容

多行注释 /* 注释的内容 */

文档注释(仅限了解) /** 注释的内容 */

6.1.2注释的注意事项

  1. 注释对程序的运行是没有任何影响的。

    简单理解:注释是不参与程序的运行的。  
  2. 注释的嵌套问题

不管是单行还是多行,在书写的时候都不要嵌套

扩展:(了解)

因为注释是对程序的解释说明,是给程序员看的。对程序的执行没有任何影响。

所以,代码在编译之后,class文件里面是没有注释信息的,做了一个注释擦除。

6.2 关键字

关键字就是被Java赋予了特定含义的英文单词。

当我们在代码中,写了对应的单词之后,那么程序在执行时,就知道要做什么事情了。

6.2.1 关键字的特点

  • 全部都是小写

  • 在常用的代码编辑器中,关键字都有高亮的颜色显示。非常直观.

  • 注意main不是关键字.

6.2.2 class和public

class关键字

表示新建一个。类是java程序中最基本的组成单元.

class后面跟随的是这个类的名字,简称:类名。

类名后面跟随一对大括号,表示类的范围。

细节:

java文件和java类不是一个东西。

java文件:就是那个后缀名为java的文件

java类:是我们通过class定义出来的那一大段代码

习惯:一个java文件中一般只写一个java类。

代码示例:

//表示新建了一个类
//类名:Demo
//类的范围:Demo后面的这对大括号决定。
public class Demo{
    
}

public关键字

当public写在class前面的时候,表示强制让文件名跟类名一定要保持一致。

如果没有一致,代码就会报错。

建议:

习惯:一个Java文件中,只写一个Java类。

这个是public关键字的第一个作用,第二个作用我们会在面向对象的时候继续学习。

6.3 字面量

在程序执行的过程中,其值不会发生改变的量。在C语言中也就是常量

由于翻译的原因,字面量跟我们预习资料中的常量是一回事。

而且,等以后你到了公司的时候,也会发现有人这么称呼。

6.3.1 分类:

  • 整数类型

  • 小数类型

  • 字符串类型

  • 字符类型

  • 布尔类型

  • 空类型

整数类型:

不带小数点的都是整数类型的字面量

小数类型:

只要带了小数点都是小数类型的字面量

举例:

123:不带小数点,整数类型

1.1 :带小数点,小数类型

0:不带小数点,整数类型

10.0:带小数点:小数类型

字符串类型:

只要用双引号引起来的,不管里面的内容是什么,不管里面的内容有没有,都是字符串类型的。

字符类型:

一,需要用单引号引起来。二,里面有且只能有一个。

举例:

"abc":用双引号引起来了,字符串类型

'a':用单引号引起来了,内容一个,字符类型

" "(里面是一个空格):用双引号引起来了,字符串类型

""(里面连空格都没有):用双引号引起来了,字符串类型

“,”(里面是逗号):用双引号引起来了,字符串类型

“123”:用双引号引起来了,字符串类型

'abc':语法错误。因为字符里面只能有一个。

布尔类型

只有两个值。true,false

true:真。false:假。

以后在实际开发中,我们会根据真假结果来执行不同的代码。

比如:用户登录。如果用户的用户名和密码输入正确了,那么比较结果就是true,此时会让用户登录成功。如果用户的用户名和密码输入错误了,那么比较结果就是false,此时会让用户继续输入。

空类型:

只有一个值:null

在后面的面向对象和数组的时候会再次学习。这里提前说一下,null不能直接使用.

代码练习:

输出Java中的6种字面量

public class HelloWorld{
    public static void main(String[] args){
        System.out.println(17);
        System.out.println(2.18);
        System.out.println("传智教育");
        System.out.println('男');
        System.out.println(true);
        System.out.println(false);
        //null简单理解:就表示什么东西都不存在。
        //不能直接输出使用的。
        System.out.println(null);
    }
}

 

发现null不能直接打印,可以用双引号引用起来打印.

特殊字符:

'\t' :制表符,是一个字符.

    public class Test2{
    public static void main(String[] args){
        //目标:
        //特殊的字符
        //\t 制表符
    //表示大小可变的  会根据前面的数据去补空格
    //最少补1个,最多补8个。
    
    //会对前面的内容进行补齐
    //让补完之后结果的长度是8或者8的倍数
    System.out.println("name" + "\t"+"age");
    System.out.println("tom" + "\t"+"23");
}
}

运行结果发现:name后有四个空格.tom后有5个空格.即\t的使用是根据前面的内容决定的.凑成8个字节.如下:

为了对比学习,我们用C语言也来试试,看看\t的使用是不是一样的如下:

 

发现C语言里和java里结果一样.

6.4 变量

概念:

在程序的执行过程中,其值有可能发生改变的数据,就是变量

在实际开发中的使用场景:

突出了变量的变字。

场景一:

用户登录的时候,每一个用户的用户名和密码都有可能是不一样的。

在程序中,我们就可以定义两个变量,一个存储用户名,一个存储密码。

场景二:

微信余额

微信的余额,也是经常发生改变的。

我们可以定义一个变量,用来记录微信的余额。当余额发生改变的时候,就修改变量记录的值。

场景三:

银行卡余额

核心点:

经常发生变化的。

格式:

数据类型 变量名 = 数据值;

数据类型:用于限定存储数据的类型。

如果是整数类型,那么表示该变量只能存整数

变量名:就是给小空间起的一个名字。

方便以后使用。

数据值:存在小空间里面的数据。

分号:表示语句的结束。

整体理解:

我们可以把变量理解为一个临时存储数据的小空间(小箱子)。

变量名,就是这个小空间的名字。

数据类型,限定了以后什么数据能存到这个小空间中。

数据值:真实存在小空间中的数据。

代码示例:

//1.定义一个变量,用来记录整数
int a = 123;
//2.定义一个变量,用来记录小数(浮点数)
double b = 11.1;

6.5 变量的使用

使用方式一:直接打印

代码示例:

//定义一个变量记录10
int a = 10;
//打印的是变量a里面记录的值
System.out.println(a);//10

扩展的对比:

//此时小括号中,打印的是字符串a
System.out.println("a");//a 

同学们犯的错误:

昨天在写HelloWorld的时候,没有加双引号。此时报错。

原因:此时打印的不是字符串HelloWorld,而是变量HelloWorld里面的值。

在代码中,我们没有定义一个叫做HelloWorld的变量,所以报错。

System.out.println(HelloWorld); 

使用方式二:参与计算

代码示例1:

int a = 10;
int b = 20;
//把变量a和变量b里面的值相加,再把结果打印出来
System.out.println(a + b); 

代码示例2:

int a = 10;
int b = 20;
//把变量a和变量b里面的值相加,再把结果赋值给左边的变量c
int c = a + b;
//把变量c里面的值进行打印。
System.out.println(c); 

使用方式三:修改变量的值

核心:变量只能记录一个值,修改之后,原来的值就会被覆盖

代码示例:

//定义一个新的变量,变量里面记录为10
int a = 10;
//此时变量a还没有被修改,所以打印的是最初的值10
System.out.println(a); //10
//修改已有的变量a,把里面的值修改为20.原来的值就被覆盖了
a = 20;
//此时变量里面记录的值已经被修改,打印修改之后的值20
System.out.println(a); //20

6.6 变量的注意事项

  1. 变量里面只能记录一个值。

    当修改了变量里面的值时,原来的值就会被覆盖。

  2. 变量名不允许重复

    代码示例:

    int a = 10;
    int a = 20;
    System.out.println(a); //变量名重复了,所以报错
  3. 一条语句可以定义多个变量(了解)

    建议:

    以后在定义变量的时候,一行定义一个。

    如果要定义多个变量,写在多行。

    代码示例:

    //表示在一行定义了4个变量,都是int类型的,以后能存整数
    //但是这种写法,不方便阅读。
    int a = 10,b = 20,c = 30,d = 40;
    System.out.println(a);
    System.out.println(b);
    System.out.println(c);
    System.out.println(d);
  4. 变量在使用之前一定要赋值

    代码示例:

    int a = 10;
    //以等号为中间界,分为两部分。
    //第一部分:等号的左边,定义变量
        int a
    //第二部分:等号的右边,给左边的变量赋值
        = 10;

    代码示例:

    // 只定义不赋值
    int a ;
    //修改值
    a = 10;
    //打印a
    System.out.println(a);

    建议:

    虽然变量的定义和赋值可以分开写。但是不建议。

    建议,以后写代码的时候,定义变量直接给值。先定义后赋值这种操作不常用.

6.7 变量的案例

根据情况计算车上乘客的数量

代码示例:

public class Test5{
    public static void main(String[] args){
        //一开始车上没人
        int count = 0;
        //到了第一站:上来一个人,没有人下去
        //先拿着count为0跟1进行相加
        //再把最终的结果赋值给count
        count = count + 1;  
        //到了第二站:上来两个人,下去一个人
        count = count + 2;
        count = count - 1;      
        //到了第三站:上来两个人,下去一个人
        count = count + 2;
        count = count - 1;      
        //到了第四站:下去一个人
        count = count - 1;
        //到了第五站:上来一个人
        count = count + 1;
        //到了终点站,count的值就是车上的乘客数量
        System.out.println(count);
    }
}

第一天学习到此结束!

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

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

相关文章

定位bug

1、bug定位常用工具   Firefox——firebug、web developer、 live http headers、http fox IE插件——httpwatch 第三方工具——fiddler 慢速网模拟工具——firefox throttle 1.该选择框使用来选择资源的,当网页被加载的时候向服务器端请求出来的文件包括.htm…

二维码识别率优化实践

本文字数:5939字预计阅读时间:15 分钟概述长按图片识别二维码在移动端是很常见的操作,长按后需要对图片进行识别,并且将二维码中所包含的数据解码出来。在我们的业务场景中,是通过点击图片进入大图预览页面。长按大图预…

项目管理工具dhtmlxGantt甘特图入门教程(六):dhtmlxGantt的扩展完整列表

dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足项目管理控件应用程序的所有需求,是最完善的甘特图图表库。 这篇文章给大家讲解dhtmlxGantt的扩展完整列表。 DhtmlxGantt正版试用下载(qun:764148812&…

【NI Multisim 14.0原理图环境设置——电路总体设计流程】

目录 序言 🍊知识点 一、电路板总体设计流程 🍉 1.创建电路文件 🍉2.规划电路界面 🍉3.放置元器件 🍉4.连接线路和放置节点 🍉5.连接仪器仪表 🍉6. 运行仿真并检查错误 🍉7…

Dropzone4 for MAC 文件拖拽增强工具

前言 ​​Dropzone for mac是一款文件拖拽操作增强工具,可以让我们把大部分工作都通过拖拽来完成,只需将文件拖拽到菜单栏上的窗口即可。比如保存文本、发送邮件、FTP上传、打开应用等等。提高了用户的工作效率。 下载 Dropzone4 特征 -打开应用程序…

连接格式优化,支持自定义

12月, eKuiper 团队继续专注于 1.8.0 版本新功能的开发。我们重构了外部连接(source/sink) 的格式机制,更加清晰地分离了连接、格式和 Schema,同时支持了格式的自定义;受益于新的格式机制,我们大幅完善了文…

echarts中formatter修改鼠标悬浮事件信息操作、echarts地图块、散点区分触发点击事件 只触发散点问题详解

这里写目录标题1、实例2、案例详解1、实例 这次我拿echarts中 地图组合散点图的实例 !!!实现效果:滑到散点显示不同于地图块的信息 及 formatter 提示窗自定义!!! 这个显示项目名称为"文昌…

千锋教育+计算机四级网络-计算机网络学习-01

目录 课程链接 最早的广域网 计算机网络发展阶段 计算机网络的定义与要点 英文单词网络术语与解释 计算机网络分类 广域网技术 城域网 局域网 个人局域网 五种基本的网络拓扑结构​ 误码率 电路交换网特点 分组交换 交换方式 TCP/IP协议族 IP协议介绍 TCP协议介绍 …

OpenCV的solvePnP函数和Dlib估计头部姿势

一、姿势估计概述1、概述在许多应用中,我们需要知道头部是如何相对于相机倾斜的。例如,在虚拟现实应用程序中,可以使用头部的姿势来渲染场景的右视图。在驾驶员辅助系统中,在车辆中观察驾驶员面部的摄像头可以使用头部姿势估计来查…

React(coderwhy)- 06(RTK)

认识ReduxToolkit 认识Redux Toolkit ◼ Redux Toolkit 是官方推荐的编写 Redux 逻辑的方法。  在前面我们学习Redux的时候应该已经发现,redux的编写逻辑过于的繁琐和麻烦。  并且代码通常分拆在多个文件中(虽然也可以放到一个文件管理,…

[RoarCTF 2019]Online Proxy(x-forwarded-for盲注)

这道题点开题目 然后题目显示不出网,一开始误认为是ssrf了,但是没有更多的信息了。 源码有一个ip会不会是修改X-Forwarded-For就可以了呢,抓包试一下, 发现有两个ip,一个当前一个是last上一个的意思把,…

数字图像处理实验——图像增强

一、实验目的与要求1.掌握图像空域点处理增强方法,包括图像求反,线性灰度变换,以及直方图均衡化方法;2.熟练掌握空域滤波增强方法,包括平滑滤波器及锐化滤波器。二、实验内容及步骤1.图像的求反、线性灰度变换、直方图…

【回答问题】ChatGPT上线了!比较流行的监督学习模型

监督学习模型是指在训练过程中,使用带有正确答案的标记数据来进行学习。常见的监督学习模型包括逻辑回归、决策树、支持向量机、朴素贝叶斯分类器、神经网络等。最近流行的监督学习模型还包括深度学习模型,如卷积神经网络和循环神经网络。 下面给出一些…

超级浏览器能帮来赞达(Lazada)老板什么忙?

近几年东南亚市场因人口红利及互联网的高度普及倍受关注,东南亚市场成了跨境市场的香饽饽,像来赞达(Lazada)、虾皮(shopee)等平台都是最近东南亚地区比较受欢迎的在线购物网站。根据第三方发布的调查报告显…

QGroundControl中使用QT语言家功能

QT语言家支持多种语言功能,在QGC中也很好的使用了该功能,下面对该功能是一些理解进行整理。首先在QGC使用语言家功能中分为qml文件和.c文件,两种略有不同。在.c文件中使用tr()将需要翻译的内容进行包裹在qml文件中使用qsTr()进行包裹下面以新…

【手把手一起学习】(一) Altium Designer 20 软件安装

Altium Designer 20 软件安装 1、解压安装压缩包 2、打开Setup文件夹 3、选中AltiumDesigner20Setup,选择“以管理员身份运行” 4、直接点击Next 5、选择“Chinese”,点击Next 6、直接点击Next 7、选择安装路径 8、直接点击Next 9、继续Next 10、软件安…

软件设计师通关攻略

软件设计师考什么?一、基础知识1.计算机科学基础知识2.计算机系统知识3.系统开发和运行知识4.面向对象基础知识5.信息安全知识6.标准化、信息化和知识产权基础知识7.计算机专业英语二、应用技术1.外部设计2.内部设计3.数据库应用分析与设计4.程序设计5.系统实施6.软…

【内网基于docker部署flink1.13.6 CDC、zeppelin0.10.0、flink-sql-cookbook-on-zeppelin】

内网基于docker部署flink1.13.6 CDC、zeppelin0.10.1、flink-sql-cookbook-on-zeppelin1、基础环境2、部署步骤2.1 docker安装2.2 拷贝docker镜像至内网2.2.1 外网机器下载所有需要镜像2.2.2 外网机器镜像检查2.2.3 外网机器镜像打包2.2.4 拷贝至内网2.2.5 内网加载镜像2.3 下载…

(剖面图全网唯一教程)如何利用EDEM制作剖面图 (自己琢磨出)

EDEM制作剖面图是一件非常重要的工作,本篇文章的方法是自己琢磨出来的,不一定完全精准,但是有效果,剖面图是可以制作出来的。方法在文末。

如何在图片上添加贴图?试试这几种方法

你平时在拍照的时候,有没有遇到过这样的情况:当你拍照后,发现背景不是很符合你的心意出现了一些你不想分享的物品,这个时候你会怎么办呢?一般情况下,有的小伙伴会选择使用马赛克来遮住这些物品,…