最新JAVA自学基础知识巩固-八大基础数据类型(第六课),java面试常考的编程题

最后

由于篇幅原因,就不多做展示了

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

介绍完标识符的命名规范后,我们来实际定义一个标识符吧!比如我想要定义一个人的名称,用标识符表示则可以定义成username,简短且有语言,很不错吧。

既然定义标识符的名称有这么多规则,那么是否有一些在定义标识符好的建议呢?答案是肯定的,我们在定义时有以下的一些建议,但不是强制要求。

1、标识符的名称应该尽量不要太长,能够表达语义,能够表达出这个标识符的作用(如:你想定义性别的含义,标识符就可以写成sex)

2、推荐标识符以小写字母开头,如果名称有多个单词组成时,使用驼峰命名法(即除了第一个单词首字母小写外,其他的单词首字母都大写,看起来像驼峰一样,由此得名,需要注意的是,有一个例外的是在定义类、接口的名称时,推荐首字母大写)

3、不要使用中文或者拼音命名,上面第一点提到JAVA只能由数字、JAVA字母、下划线和美元符号组成,这里的的JAVA字母并不单纯只指英文字母,它的意思是Unicode字符集中包含的字符,其中也包括一些中文汉字,但是命名的时候并不推荐使用中文命名

image-20211214233855750


为什么标识符命名时不推荐使用中文或者拼音的呢?


  • 第一有局限性,编程语言是由国外先普及,很多语言、框架的设计都是使用英文的方式,英语作为全球使用最广泛的语言,有着先天优势,使用中文或者拼音命名需要有汉语基础的人才能够读懂,不利于全球性传播(博主也希望有一定中文语言真的能够流行起来,大家也值得为之努力)。

  • 第二可读性不太高,比如一个变量的属性命名为中文,如果需要定义它的get/set方法就会看起来很奇诡。如字段为private String 姓名;则它的get/set方法public String get姓名/set姓名(…)。

  • 出现乱码的概率更高。因为许多字符集不能完全支持中文,所以使用中文命名在不同的编码方式下会比英文出现乱码的概率更高。

  • 很难统一,因为中文博大精深,一个意思能够使用多种不同的词语来表达,每个人的理解又不一样,这样一份代码中可能相同的东西有多种表达,不利于管理。


关键字

========================================================================

所谓关键字就是在JAVA中已经被赋予特殊含义的一些单词,这些被赋予特殊含义的单词不能在被作为自定义的标识符。 JAVA常见的50个关键词如下(按照字母顺序排序):

abstract、assert、boolean、break、byte、case、catch、char、class、const、continue、default、do、double、else、enum、extends、final、finally、float、for、goto、if、implements、import、instanceof、int、interface、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while。


转义符

========================================================================

在JAVA中,定义了一种特殊的字符常量,它们被称作转义符。转义符都是以反斜杠()为标志,配合其他的一些字符来表达特殊的含义。 如\n则表示换行、\b表示退格、\r表示回车、\t表示横向跳格(即制表符tab)


数据类型

=========================================================================

就如人类在自然界中运输物品是需要借助有容纳空间的外物来实现如箱子、袋子等,JAVA语言作为人类和计算机交流的方式也有相似的概念,在JAVA中这种“外物”也叫数据类型,主要的作用是用来对数据的运算和存储。

在自然界中,我们可以通过经纬度坐标的方式能够精确地得知地球上的任意一个位置,在JAVA中这个"坐标"也叫作变量,它是表示一个数据存储在计算机空间的位置,将数据复制给变量,实际上就是将数据存储到对应对的内存空间,并且可以通过这个变量去访问到这些数据。

我们可以简单地理解一个变量就是一个内存空间,数据就存储在变量对应的空间中,不同的数据需要存储的空间不同(就好比装一头大象可能需要一辆货车、装一条鱼只需要一个袋子),JAVA中使用数据类型来区分不同的数据,用以表示不同数据占用不同的空间。

image-20211216225714323


在JAVA中,数据类型可以区分为两大类即:基本数据类型和引用数据类型。

基本数据类型: 由程序语言在发行时就已经定义好的,值直接存储在内存中,它的空间大小是固定的,不会随着软硬件环境不同而改变。

引用数据类型: 可以是开发者自由定义,也可以是由一个或者多个基本数据组成,它存储的是指向组成这个数据类型的数据地址,故也被称为引用类型。

JAVA中,默认提供了8种基本数据类型即字节型、短整形、整形、长整型、浮点型、双精度浮点型、布尔型、字符型,它们的特点如下:

| 类型 | 关键字 | 占用字节 | 适用场景 | 取值范围 |

| — | — | — | — | — |

| 字节类型 | byte | 1 | 适用取值范围很小的数 | -128 ~127 |

| 短整形 | short | 2 | 较小的整数 | -215 ~ 215-1 |

| 整形 | int | 4 | 一般整数 | -231 ~ 231-1 |

| 长整型 | long | 8 | 非常大的整数 | -263 ~ 263-1 |

| 浮点型 | float | 4 | 普通实数 | -3.402 82338 ~ 3.402 82338 |

| 双精度 | double | 8 | 非常大的实数 | -1.7977*10308 ~ 1.7977*10308 |

| 字符型 | char | 2 | 单个字符 | 0-65535 |

| 布尔类型 | boolean | 1 | 只有真或假取值 | true和false |

image-20211216230908121


常量和变量

==========================================================================

在实际的程序开发中,我们会根据自己需求去申请实际的空间大小存储我们需要的数据(即定义数据类型),因此,我们需要有一个名称来标识和指向这个申请到的存储地址,这个名称分为常量和变量两种。

常量: 一旦指定了数据值就不能再被修改的标识符。

变量: 指定数值后数据值也可以被修改的标识符。


在JAVA语言中,常量和变量都必须遵循先声明、后使用的原则,所以,在使用前必须指定常量或者变量的数据类型,作用如下:指定数据类型便于系统分配足够的空间大小,指定变量名称方便开发者和系统指向分配好的空间以及标识使用该名称。

常量声明规范:final 数据类型 变量名1,变量名2…(常量声明时必须给定一个固定的值)。

常量声明示例:final int CONST = 100;

变量声明规范:数据类型 变量名1,变量名2…;

常量声明示例:int number,number2;(可以同时声明多个变量,变量名之间用逗号隔开)

注意事项: 在编码的习惯或者约定俗称中,常量名用大小字母表示,多个单词时用下划线连接如:NUMBER_NAME,变量名则遵循驼峰原则即首单词首字母用小写,其他单词首字母用大写入:numberName。


思考讨论

=========================================================================

文章结束前,预留一些问题与大家讨论:

  • 你觉得在未来普遍使用中文编程的可能性有多大?它们的优缺点在哪里?为什么中文编程迟迟没有流行起来?

  • 如果真的想推广中文编程,我们需要为此做哪些方面的努力?

完结

Redis基于内存,常用作于缓存的一种技术,并且Redis存储的方式是以key-value的形式。Redis是如今互联网技术架构中,使用最广泛的缓存,在工作中常常会使用到。Redis也是中高级后端工程师技术面试中,面试官最喜欢问的问题之一,因此作为Java开发者,Redis是我们必须要掌握的。

Redis 是 NoSQL 数据库领域的佼佼者,如果你需要了解 Redis 是如何实现高并发、海量数据存储的,那么这份腾讯专家手敲《Redis源码日志笔记》将会是你的最佳选择。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

图片转存中…(img-sCiYka5B-1715640166835)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 28
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值