[Java基础]基本概念(上)(标识符,关键字,基本数据类型)

简介: hello 大家好,计算机语言各有不同,但本质上都是操作内存和计算。这章的内容是介绍Java中的基本概念展开,包括:标识符,关键字,Java基本数据类型,运算符,表达式和语句,分支,循环,方法,变量的作用域,递归调用。这些是Java运行的基础,就像我们人体内的筋骨,肌肉,血管一样。

hello 大家好,计算机语言各有不同,但本质上都是操作内存和计算。这章的内容是介绍Java中的基本概念展开,包括:标识符,关键字,Java基本数据类型,运算符,表达式和语句,分支,循环,方法,变量的作用域,递归调用。这些是Java运行的基础,就像我们人体内的筋骨,肌肉,血管一样。



1、标识符


Java语言中,对于变量,常量,函数,语句块也有名字,我们统统称之为Java标识符,只要可以自己起名字的,都是标识符。

      作用:标识符用来给类、对象、方法、变量、接口和自定义数据类型命名。


 Java标识符由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成。在Java中是区分大小写的,而且还要求首位不能是数字。最重要的是,Java关键字不能当作Java标识符。


       命名约定:


       1)类和接口名。每个字的首字母大写,含有大小写。例如,MyClass,HelloWorld,Time等。


       2)方法名。首字符小写,其余的首字母大写,含大小写。尽量少用下划线。例如,myName,setTime等。这种命名方法叫做驼峰式命名。


       3)常量名。基本数据类型的常量名使用全部大写字母,字与字之间用下划线分隔。对象常量可大小混写。例如,SIZE_NAME。


       4)变量名。可大小写混写,首字符小写,字间分隔符用字的首字母大写。不用下划线,少用美元符号。给变量命名是尽量做到见名知义。


2、关键字


 Java关键字是电脑语言里事先定义的,有特别意义的标识符,用做专门用途,有时又叫保留字。Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。


     作用:关键字是编译器和程序员的一个约定,程序员利用关键字来告诉编译器其声明的变量类型、类、方法特征等信息。


       所有的关键字都是小写。


Java共定义了下面的关键字:








还有些关键字没有具体含义,比如goto,const,

3、常量


使用 final关键字修饰,表示变量只能被赋值一次,一旦被赋值不能被改变,习惯上变量名使用大写。

      我们在项目中,会使用类常量,用static修饰,使一个常量可以被类中的多个方法使用。或者再使用public修饰此时,可以被工程的其他类使用。


4、变量


 变量是程序中基本的存储单元。其实变量代表内存中一小块区域,不同类型的变量在内存中占不同的长度,通过变量名来访问这块区域。所以变量在使用时,要先声明,再赋值,才能使用。


      格式:类型 变量名 = 值;


      从内存的角度分析:在程序执行时,将执行的代码加载到内存中,操作系统找到代码的main方法后开始执行。内存分为4块存取,存储变量和运行时产生的数据:


       code segment:存放代码;


       data segment:存放静态变量,字符串常量;


       stack:存放变量;


       heep:存放new出来的对象;


       放一张马老师总结的图:


792f0f604fec43ec8e8f3fd850ad7f51.png


变量有哪些类型呢?

1)按被声明的位置划分:局部变量,成员变量;

局部变量:方法,或语句块中声明的变量;

成员变量:方法外部,类的内部声明的变量;


2)按所属数据类型分为:基本数据类型,引用数据类型

基本数据类型:4类8种;


数据类型 说明

逻辑型:

boolean

用于逻辑运算,程序判断。只能取值:true或false

文本型:

char

表示通常意义上的字符;

字符常量,是用单引号括起来的单个字符,如'a','字';

Java字符,可以使用转义字符'\',将其后面的字符转变为其他的含义。利如:

char c2='\n';


10.png

11.png


类型之间的转换:


1.boolean不能转换为其他数据类型;


2.整数,字符型,浮点型间转换,需要遵循以下原则:


1)容量小的自动转成容量大的,是自动转换,程序员无感知;


2)容量大的转成容量小的,需要强转;可能损失精度或溢出,是强制转换,显式,需要声明类型。


3)多种类型数据混合计算时,系统首先将数据转成最大的类型,再进行计算。


数据类型,按容量大小排序:byte,short,char—>int—>long—>float—>double


byte,short,char之间不能互相转换,需要时,要先转成int,再运算。


强制转换中,哪些场景可能引起精度损失或溢出?


1)整数之间转换,超过目标类型表数范围,对目标表数范围取余;


2)浮点数转整数,会发生截尾,把小数点后面截掉。同样此时的整数超过目标类型表数范围,也会对目标表数范围取余。

       // 1.自动转换和强转
        int a = 129;
        int a1 = -200;
        // 自动转换:1.23默认double类型,a自动转为double类型参与运算;
        double c = a * 1.23;
        // 强转:double类型需要强转到float类型
        float e = (float) (a * 1.23);
        // 2.溢出和精度损失
        byte b = (byte) a; //byte能接收范围是: 负128 .正127
        System.out.println("b = " + b);//b = -127 结果错误
        int f = (int) 158.23;
        System.out.println("f = " + f); // f = 158 精度损失;直接舍弃小数,不是四舍五入
        // 3.声明一个float类型的变量
        float h = 1.23f;
        // 4.如果不加f,1.23是double类型,需要强转为float类型
        float j = (float) 1.23;
        // 5.int 类型转换成long
        long i = 123;
        // 6.声明一个long类型的变量
        long k = 123l;
相关文章
|
30天前
|
存储 Java 测试技术
Java基础(三):八种基本数据类型
Java基础(三):八种基本数据类型
Java基础(三):八种基本数据类型
|
29天前
|
Java 编译器 开发者
Java中的this关键字详解:深入理解与应用
本文深入解析了Java中`this`关键字的多种用法
115 9
|
2月前
|
存储 缓存 安全
Java中的数据类型
Java语言提供了八种基本类型,分为4类8种:六个数值型(四个整数型byte、short、int、long,两个浮点型float、double)、一个字符型char和一个布尔型boolean。每种基本类型有固定的位数、取值范围及默认值。此外,还存在`void`类型,但无法直接操作。基本类型支持隐式和显式类型转换,并有对应的包装类如`Integer`、`Double`等,用于在需要对象的场景中使用。包装类支持自动装箱与拆箱机制,简化了基本类型与引用类型的转换,但需要注意性能和空指针异常等问题。
Java中的数据类型
|
2月前
|
存储 缓存 Java
Java 并发编程——volatile 关键字解析
本文介绍了Java线程中的`volatile`关键字及其与`synchronized`锁的区别。`volatile`保证了变量的可见性和一定的有序性,但不能保证原子性。它通过内存屏障实现,避免指令重排序,确保线程间数据一致。相比`synchronized`,`volatile`性能更优,适用于简单状态标记和某些特定场景,如单例模式中的双重检查锁定。文中还解释了Java内存模型的基本概念,包括主内存、工作内存及并发编程中的原子性、可见性和有序性。
Java 并发编程——volatile 关键字解析
|
1月前
|
JSON Java 数据挖掘
利用 Java 代码获取淘宝关键字 API 接口
在数字化商业时代,精准把握市场动态与消费者需求是企业成功的关键。淘宝作为中国最大的电商平台之一,其海量数据中蕴含丰富的商业洞察。本文介绍如何通过Java代码高效、合规地获取淘宝关键字API接口数据,帮助商家优化产品布局、制定营销策略。主要内容包括: 1. **淘宝关键字API的价值**:洞察用户需求、优化产品标题与详情、制定营销策略。 2. **获取API接口的步骤**:注册账号、申请权限、搭建Java开发环境、编写调用代码、解析响应数据。 3. **注意事项**:遵守法律法规与平台规则,处理API调用限制。 通过这些步骤,商家可以在激烈的市场竞争中脱颖而出。
|
2月前
|
缓存 安全 Java
Java volatile关键字:你真的懂了吗?
`volatile` 是 Java 中的轻量级同步机制,主要用于保证多线程环境下共享变量的可见性和防止指令重排。它确保一个线程对 `volatile` 变量的修改能立即被其他线程看到,但不能保证原子性。典型应用场景包括状态标记、双重检查锁定和安全发布对象等。`volatile` 适用于布尔型、字节型等简单类型及引用类型,不适用于 `long` 和 `double` 类型。与 `synchronized` 不同,`volatile` 不提供互斥性,因此在需要互斥的场景下不能替代 `synchronized`。
2274 3
|
3月前
|
Java
Java基础之数据类型
Java基础之数据类型
31 6
|
8月前
|
存储 Java
Java基础手册(标识符 关键字 字面值 变量 数据类型 字符编码 运算符 控制语句 方法及方法重载和递归 面向对象与面向过程)
Java基础手册(标识符 关键字 字面值 变量 数据类型 字符编码 运算符 控制语句 方法及方法重载和递归 面向对象与面向过程)
55 0
|
9月前
|
算法 Java 数据安全/隐私保护
【Java开发指南 | 第二篇】标识符、Java关键字及注释
【Java开发指南 | 第二篇】标识符、Java关键字及注释
46 5
|
9月前
|
存储 Java
深入理解Java的标识符和关键字
深入理解Java的标识符和关键字
90 0