Java的基础概念(一)

news/2024/12/24 20:20:12/

一、注释

**注意!:**注释内容不会参与编译和运行,仅仅是对代码的解释说明。

Java支持单行注释、多行注释、文档注释。

单行注释

以//开头 ,格式【 //注释内容 】

例子如下:

多行注释

格式【 / 注释内容 / 】

例子如下:

文档注释

(通常用于生成Java开发文档,在学习java基础阶段用不上)。

二、关键字

关键字:被Java赋予特定涵义的英文单词
  • 关键字的字母全部小写
  • 常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观。

如图:红色方框

class关键字
  • class关键字表示定义一个类,后面跟随类名

如图:蓝色方框

注意:关键字很多,不用刻意去记。
abstractassertbooleanbreakbyte
casecatchcharclassconst
continuedefaultdodoubleelse
enumextendsfinalfinallyfloat
forgotoifimplementsimport
instanceofintinterfacelongnative
newpackageprivateprotectedpublic
returnstrictfpshortstaticsuper
switchsynchronizedthisthrowthrows
transienttryvoidvolatilewhile

三、字面量

基本作用

:告诉程序员,数据在程序中的书写格式。

字面量类型说明程序中的写法
整数不带小数的数字666,-88
小数带小数的数字13.14,-5.21
字符必须使用单引号,有且仅能一个字符‘A’,‘0’, ‘我’
字符串必须使用双引号,内容可有可无“HelloWorld”,“黑马程序员”
布尔值布尔值,表示真假,只有两个值:true,falsetrue 、false
空值一个特殊的值,空值值是:null

例图:

区分技巧

  1. 不带小数点的数字都是整数类型的字面量。
  2. 只要带了小数点,那么就是小数类型的字面量。
  3. 只要用双引号引起来的,不管里面的内容是什么,不管里面有没有内容,都是字符串类型的字面量。
  4. 字符类型的字面量必须用单引号引起来,不管内容是什么,但是个数有且只能有一个。
  5. 字符类型的字面量只有两个值,true、false。
  6. 空类型的字面量只有一个值,null。

四、变量

4.1 什么是变量?

变量就在程序中临时存储数据的容器。但是这个容器中只能存一个值。

4.2 变量的定义格式

数据类型 变量名 = 数据值;(变量名由多个单词组成时,会使用驼峰命名法进行命名!【下面会讲到】)

public class Test{public static void main(String[] args){//定义一个整数类型的变量//数据类型 变量名 = 数据值;int a = 16;//驼峰命名一个浮点类型的变量double appleNumber=3;}
}
4.2.1 格式详解

数据类型:限定了变量当中能存储什么类型的数据。

如果要存10,那么数据类型就需要写整数类型。

如果要存10.0,那么数据类型就需要写小数类型。

变量名:其实就是这个容器的名字。

当以后想要使用变量里面的数据时,直接使用变量名就可以了。

数据值:真正存储在容器中的数据。

分号:表示语句的结束,就跟以前写作文时候的句号是一样的。

4.2.2 常用的数据类型

整数:int

小数:(浮点数)double

其他数据类型稍后讲解

举例:

public class Test1{public static void main(String[] args){//定义一个整数类型的变量//数据类型 变量名 = 数据值;int a = 16;//输出变量aSystem.out.println(a);//定义一个小数类型的变量double b = 10.1;//输出变量bSystem.out.println(b);}
}
4.2.3 变量的注意事项
  • 变量名不能重复
  • 在一条语句中,可以定义多个变量。但是这种方式影响代码的阅读,所以了解一下即可。
  • 变量在使用之前必须要赋值。

案例:

public class Test2{public static void main(String[] args){//1.变量名不允许重复//int a = 10;//int a = 20;//System.out.println(a);//2.一条语句可以定义多个变量//了解。//int a = 10, b = 20, c = 20,d = 20;//System.out.println(a);//?//System.out.println(b);//?//3.变量在使用之前必须要赋值int a = 30;System.out.println(a);}
}

4.3 变量的练习

需求:说出身穿背带裤的小黑子有多少个篮球?

一开始小黑子只有0个篮球。

第一次:小黑子拿来3个篮球。

第二次:小黑子拿来2个篮球,但是送走了4个。

第三次:小黑子拿来5个篮球,但是送走了2个。

问:小黑子现在有多少个篮球?

代码解析:

代码解析:

public class Test3{//主入口public static void main(String[] args){//一开始小黑子只有0个篮球。int count = 0;//第一次:小黑子拿来3个篮球。//在原有的基础上 + 3count = count + 3;//System.out.println(count);//第二次:小黑子拿来2个篮球,但是送走了4个。count = count + 2 - 4; //第三次:小黑子拿来5个篮球,但是送走了2个。count = count + 5 - 2;//问:小黑子现在有多少个篮球?System.out.println(count);//4}
}

五. 数据类型

5.1 Java语言数据类型的分类

  • 基本数据类型
  • 引用数据类型(后面的学习会进一步深入学习)

5.2 基本数据类型的四类八种

数据类型关键字内存占用取值范围
整数byte1负的2的7次方 ~ 2的7次方-1(-128~127)
short2负的2的15次方 ~ 2的15次方-1(-32768~32767)
int4负的2的31次方 ~ 2的31次方-1
long8负的2的63次方 ~ 2的63次方-1
浮点数float41.401298e-45 ~ 3.402823e+38
double84.9000000e-324 ~ 1.797693e+308
字符char20-65535
布尔boolean1true,false
说明

e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。

java中整数默认是int类型,浮点数默认是double类型。

需要记忆以下几点

byte类型的取值范围:

-128 ~ 127

int类型的大概取值范围:

-21亿多 ~ 21亿多

整数类型和小数类型的取值范围大小关系:

double > float > long > int > short > byte

最为常用的数据类型选择:

  • 在定义变量的时候,要根据实际的情况来选择不同类型的变量。

比如:人的年龄,可以选择byte类型。

比如:地球的年龄,可以选择long类型。

  • 如果整数类型中,不太确定范围,那么默认使用int类型。
  • 如果小数类型中,不太确定范围,那么默认使用double类型。
  • 如果要定义字符类型的变量,那么使用char
  • 如果要定义布尔类型的变量,那么使用boolean

5.3 定义8种基本数据类型变量

public class Test05{public static void main(String[] args){//1.定义byte类型的变量//数据类型 变量名 = 数据值;byte a = 10;System.out.println(a);//2.定义short类型的变量short b = 20;System.out.println(b);//3.定义int类型的变量int c = 30;System.out.println(c);//4.定义long类型的变量long d = 123456789123456789L;System.out.println(d);//5.定义float类型的变量float e = 10.1F;System.out.println(e);//6.定义double类型的变量double f = 20.3;System.out.println(f);//7.定义char类型的变量char g = 'a';System.out.println(g);//8.定义boolean类型的变量boolean h = true;System.out.println(h);}
}
注意点
  • 如果要定义 一个整数类型的变量,不知道选择哪种数据类型了,默认使用int。
  • 如果要定义 一个小数类型的变量,不知道选择哪种数据类型了,默认使用double。
  • 如果要定义一个long类型的变量,那么在数据值的后面需要加上L后缀。(大小写都可以,建议大写。)
  • 如果要定义一个float类型的变量,那么在数据值的后面需要加上F后缀。(大小写都可以)

5.4 练习1

需求:定义5个变量记录前女友的信息并打印

代码示例:

public class Test51{public static void main(String[] args){//1.定义字符串类型的变量记录前女友的姓名String name = "天启小美";//2.定义整数类型的变量记录前女友的的年龄int age = 18;//3.定义字符类型的变量记录前女友的的性别char gender = '女';//4.定义小数类型的变量记录前女友的的的身高double height = 165.5;//5.定义布尔类型的变量记录前女友的的婚姻状况boolean flag = true;//输出5个变量的值System.out.println(name);System.out.println(age);System.out.println(gender);System.out.println(height);System.out.println(flag);}
}

六. 标识符

业内大多数程序员都在遵守阿里巴巴的命名规则。(可以浏览器搜索查看)

6.1 硬性要求:

必须要这么做,否则代码会报错。

  • 必须由数字、字母、下划线_、美元符号$组成。
  • 数字不能开头
  • 不能是关键字
  • 区分大小写的。

6.2 命令建议:

如果不这么做,代码也不会报错,但是会让代码显得比较low。

6.2.1 小驼峰命名法

适用于变量名和方法名

  • 如果是一个单词,那么全部小写,比如:name
  • 如果是多个单词,那么从第二个单词开始,首字母大写,比如:firstName、maxAge

6.2.2 大驼峰命名法

适用于类名

  • 如果是一个单词,那么首字母大写。比如:Demo、Test。
  • 如果是多个单词,那么每一个单词首字母都需要大写。比如:HelloWorld

不管起什么名字,都要做到见名知意。

阿里巴巴命名规范细节:

  1. 尽量不要用拼音。但是一些国际通用的拼音可视为英文单词。

正确:alibaba、hangzhou、nanjing

错误:jiage、dazhe

  1. 平时在给变量名、方法名、类名起名字的时候,不要使用下划线或美元符号。

错误:_name

正确:name


http://www.ppmy.cn/news/1557820.html

相关文章

【视觉SLAM:Panoptic FPN全景分割网络】

Panoptic FPN是一种全景分割(Panoptic Segmentation)的经典网络,最早由 Kirillov 等人在 2019 年提出。全景分割是一种统一的视觉任务,结合了实例分割(Instance Segmentation)和语义分割(Semant…

前端中的拖拽知识

概述 本文主要介绍前端中拖拽相关的知识以及如何在 vue3 工程里实现拖拽指令。 前端中的拖拽 前端中的拖拽功能是一种交互设计,允许用户通过鼠标或触摸操作移动页面上的元素到不同的位置。这一功能的实现涉及 HTML、CSS 和 JavaScript 的综合运用。 HTML元素拖拽…

RabbitMQ的工作模型

RabbitMQ 其实一共有六种工作模式:简单模式(Simple)、工作队列模式(Work Queue)、发布订阅模式(Publish/Subscribe)、路由模式(Routing)、通配符模式(Topic&a…

sqlilabs第三十关到第三十五关靶场攻略

第三十关 第三十关和二十九关差不多,将单引号换成双引号 查询表名,字段名,数据 ?id1&id-2" union select 1,group_concat(table_name),3 from information_schema.tables where table_schemadatabase()-- ?id1&id-2" …

搜索引擎蜘蛛池的原理是什么,蜘蛛池搭建教程(蜘蛛池.中国)

搜索引擎蜘蛛池的原理 模拟自然链接结构:通过大量域名和服务器资源创建众多站点页面,相互链接形成类似自然的庞大链接结构,吸引搜索引擎蜘蛛频繁访问. 制造活跃假象:蜘蛛池中的网页内容丰富且更新频繁,会让搜索引擎蜘…

前端项目发布后打开报错Uncaught SyntaxError: Unexpected token ‘<‘ (at chunk-vendors)

报错原因&#xff1a;请求js拿到的是一个非js脚本文件&#xff0c;因为请求没拿到正确路径。 如&#xff1a;我的项目是部署在www.a.com/web下&#xff0c;打包后index.html内请求的脚本默认是 <script src"/static/js/chunk-vendors.ea8a242f.js"></scrip…

STL源码剖析(侯捷版本) —— 第四章 序列式容器(三)

传送门 STL源码剖析(侯捷版本) —— 第一章 STL 概论与版本简介 STL源码剖析(侯捷版本) —— 第二章 空間配置器 allocator STL源码剖析(侯捷版本) —— 第三章 迭代器(Iterators)与Traits编程技巧在C STL中的应用 STL源码剖析(侯捷版本) —— 第四章 序列式容器&#xff08…

html+css网页设计 旅游 移动端 雪花旅行社4个页面

htmlcss网页设计 旅游 移动端 雪花旅行社4个页面 网页作品代码简单&#xff0c;可使用任意HTML辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xff09;。 获取源码 …