序言
在以后的该文中,壹哥给他们传授了Java的第二个事例HelloWorld,并详尽给他们如是说了Java的URL,所以那时他们也早已晓得该采用甚么样的辅助工具展开Java合作开发。所以接下去,壹哥会勒罗尔县带他们自学Java的各式各样技术细节文本,比如说甚么是表达式?Java里有怎样正则表达式?请他们急忙掏出小G225,搞好讲义哦。
——-爱抚已略过,精采即早已开始——-
概要约【4000】字,不说废话,只讲能让你教给控制技术、晓得基本原理的纯蔬果!责任编辑暗含多样事例及新闻标题,让你更快地认知和利用该文的控制技术基本概念,并能给你增添具备足够多感悟的思索……
一、 表达式概要
细细忆起呵呵,在你还没自学Java以后,你是不是母汤氏【表达式】那个词?第二次听见【表达式】那个词是在甚么这时候?很多TX可能会说,我从前没母汤氏【表达式】!只不过绝大部分人都母汤氏!他们在小学时,在上课时上就有【表达式】那个词了,比如说两个常用的方程组y=x2+1。这里的x与y是表达式,请他们自述呵呵微积分里x表达式则表示甚么涵义?
在他们的Java语言中,同样存在着【表达式】的基本概念,并且该基本概念与微积分方程里的表达式涵义类似。
1. 基本概念
在Java中,表达式是程序里最基本的存储单元,它由表达式名、表达式类型、作用域组成。从本质上来说,表达式只不过是内存里的一小块存储区域,该区域只能存储声明表达式时指定类型的数据。他们创建采用每个表达式前,必须先声明,在内存中申请空间,然后对其展开初始化赋值,接着就能通过表达式名来访问和采用这块内存区域了。
进一步解释呵呵,表达式只不过是两个能存储特定类型数据的容器。那个容器在内存中有自己的地址,为了方便地找到那个地址,他们能给每个地址起个”名字“,这是”表达式名“。每个表达式的正则表达式都是固定不变的,但表达式中对应数据的具体文本,却是能改变的,所以”表达式“指的是文本能改变的量。
如果你对上面关于表达式的解释还不晓得,壹哥再来给你举个更通俗易懂的栗子。
假如他们是搞化学的,那时你手里有很多种化学元素,该如何存储它们?他们晓得,这些化学元素的性质各不相同,不能一股脑地都放在一起,必须分类存储。他们能找到一些适合存储这些化学元素的”瓶子“(容器),每种瓶子只能存储不同类型(正则表达式)的化学元素,不能混装,否则就会发生化学反应引起爆炸(报错)。并且每种瓶子都有自己的存储大小(容量),不可能两个瓶子里存储无限多的化学元素。那时的瓶子有很多,你要经常找到并采用这些瓶子,就需要给这些瓶子编号命名(表达式名),并且要有对应的存放位置(内存地址),不能随便乱放。

那时你搞懂表达式的涵义了吗?
2. 分类
在Java中,根据不同的分类标准,表达式也被分成了很多种:
● 如果是按照正则表达式来划分,表达式能分为基本类型的表达式和引用类型的表达式。
● 如果是按照作用范围来划分,表达式能分为局部表达式、成员(实例)表达式和类(静态)表达式。
当然,那时你可能对甚么是基本类型、引用类型、局部表达式、成员表达式、类表达式等基本概念还都很懵逼。请暂时不用管这些,脑子中有个印象即可,壹哥在后面会再详尽给你如是说这些基本概念都是怎么回事,他们先勒罗尔县来自学表达式的表述与采用事例。
二、 表达式的表述与事例
1. 命名规则与规范
壹哥在前面传授JavaURL时给他们讲过,Java的URL有一定的命名规则和规范。并不是你想怎么命名就怎么命名,必须遵循一定的要求。他们再来回顾呵呵JavaURL的命名规则与规范,规则如下:
①. JavaURL由 字母(含英、中、日、俄等)、数字、下划线”_” 和 美元符号$ (音: dollar)组成,如age、G7、_value、$salary;
②. 不能以数字开头,如123abc;
③. 严格区分大小写,如class与Class是不同的;
④. 长度无限制(一般不要超过15个字符);
⑤. 不能是Java中的保留字和关键字。
Java的表达式名也是一种URL,所以必须遵循以上这些规则!另外还有一些命名规范需要他们尽量遵守,比如说:
● 表达式名尽量要做到见名知意。在实际合作开发时尽量不要写a、b、c这种名称;
● 表达式名的首字母要小写。如果名称由多个单词组成,第二个单词的首字母应小写,剩下的单词首字母应大写(驼峰式命名法),例如 xxxYyyZzz、numCounter。
复习完表达式的命名规则与规范后,他们就早已开始表述表达式吧。
2. 基本语法
在Java语言中,所有的表达式在采用前都必须先声明再采用,否则就会报错。一般表述表达式的基本语法格式如下:

这儿的type则表示Java的正则表达式,同一条语句中能用逗号隔开多个同类型的表达式。这儿的”=“等号则表示赋值,不是通常微积分里等号的意思,其作用是把”=“后面的值赋给前面的表达式。语句的最后采用英文的 “;” 分号来则表示语句结束。
3. 实现步骤
根据上面的表述语法,他们表述两个表达式的基本步骤能分成如下3步:
1. 声明表达式,是申请一块内存地址;
2. 表达式初始化,是给变量赋值;
3. 采用表达式。
虽然表达式的表述步骤,基本上是以上这3步,但在实际合作开发时却也有几种不同的具体写法,接下去壹哥就通过几个事例来给他们展示不同的表达式表述写法。
3.1 表述方式一
他们首先来看第一种写法,这种写法完全符合表达式表述的3步走策略,但是写起来有点啰嗦。

在上面的代码中,他们表述了两个int整型的表达式,表达式名称为a,初始值为10。如果他们不写初始值,就相当于系统给它指定了默认值,默认值是0。但他们在采用表达式以后,必须要给表达式展开初始化赋值,否则编译器就会自动检测出错误,从而会报错!错误信息如下所示:The local variable a may not have been initialized

3.2 表述方式二
下面是第二种表述表达式的写法,相比第一种写法简单一些,直接把表达式的声明和初始化放在一起,所以这种方式用的较多。

3.3 表述方式三
他们也能采用以下写法,即在一条语句中连续表述多个表达式。但他们要注意,他们在一条语句中连续表述多个表达式时,应该给每个表达式都展开初始化赋值,否则在编译以后合作开发辅助工具就会直接报错!

3.4 表述方式四
他们能在第3种表述表达式的写法基础上进一步简化。同样是把多个表达式表述在一条语句内,但a、b表达式未初始化,c表达式展开了初始化。这种写法在语法上是没问题的。但a和b这两个表达式不能直接采用,因为没初始化,如果直接采用会产生错误。c表达式能直接采用,因为展开了初始化赋值!

通过上面几个小事例,壹哥给他们传授了表达式表述的4种写法。至于你愿意用哪种写法,只不过都能,那个主要是看个人的写作习惯,它们之间并没特别大的性能差异。
4. 进阶事例
自学完上面几个最基本的事例之后,壹哥再给他们设计几个进阶事例,进一步加深对于表达式的掌握。
4.1 表达式重新赋值
壹哥在前面跟他们说过,表达式是值能被改变的量,所以表达式的两个重要特点是能重新赋值!例如,他们先给表达式x赋值100,再赋值200。

他们第二次表述表达式x时,需要指定表达式的类型int,因此表述语句是int x = 100;。而第二次重新赋值时,因为表达式x早已存在了,不用再重复表述,因此不用再重复指定表达式类型int,直接采用语句x = 200;即可。
4.2 表达式之间赋值
表达式不但能重新赋值,还能把两个表达式赋值给另外的表达式,他们来看下面的例子:

三、表达式基本原理
通过上面的几个事例,你那时应该对表达式的采用有了基本的掌握。在搞清楚表达式该怎么用之后,壹哥再简单给他们分析呵呵表达式在内存中的分配情况,这也是表达式的基本工作基本原理,他们求职时面试官就喜欢考察这一块的文本哦。
忆起呵呵,他们以后表述表达式的基本过程,比如说int x=100;:
1. 首先需要指明该表达式的正则表达式,比如说本该文说到的int整型;
2. 然后要给该表达式设置两个表达式名,比如说表达式名称x;
3. 接着他们还要给表达式赋值,比如说 x=100。
在以上表述表达式并赋值的过程中,x是表达式名。JVM虚拟机会给该表达式在内存中分配两个位置0x002(那个地址值是我随便写的,计算机底层会按自己的规律生成),然后计算机底层就会根据该位置来找到x表达式的真实存储位置。那个内存中的地址值,相当于是x表达式的”门牌号“,别人能根据那个地址值找到x表达式。对于基本类型的x表达式来说,它的整型值100会存储在两个叫做”栈“的结构里,关于”栈“的详尽文本,壹哥会在后面的该文中再单独说明。一句话,创建表达式时,需要在内存中申请一块空间。内存管理系统会根据表达式的类型来为表达式分配存储空间,分配的空间只能用来储存该类型数据。他们能参考壹哥绘制的示意图来认知整型表达式x的内存结构:

——-正片已结束,来根事后烟——-
四、 结语
至此,壹哥就把表达式的基本文本给他们传授完了,最后他们再来总结呵呵今天的重点:
● 表达式是存放在内存中的两个存储区域,该区域有自己的名称和类型;
● 表达式由表达式名、表达式类型、作用域组成;
● 表达式需要先声明、初始化后再采用;
● 注意表达式的命名规则和规范;
● 掌握表述四表达式的几种实现写法;
● 认知表达式的内存分配。
如果你还有其他疑问,能在评论区留言~
五、 今日作业
第一题
表达式采用的三要素是甚么? 请在评论区给出你的答案。
第二题
表达式的命名规则有怎样?请在评论区给出你的答案吧。
第三题
编写几段代码,表述几个表达式并赋值,输出结果看看是否正确。
相关推荐:
IntelliJ IDEA 下载安装及配置采用教程(图文步骤详解)
Eclipse安装和配置环境教程(图文详解)
从零早已开始学Java系列之如何采用记事本编写java程序
从零早已开始学Java系列之Java语言URL的命名规范(超详尽传授)