【Java基础整理】java基本定义与概念

26 阅读7分钟

Java基本定义与概念

摘要

本文档详细介绍Java编程语言的基本概念,包括关键字、标识符、运算符、常量、变量、函数和类对象等核心知识点,为Java学习者提供全面的基础知识参考。


目录

  1. 关键字
  2. 标识符
  3. 运算符
  4. 常量
  5. 变量
  6. 函数
  7. 类与对象

关键字

关键字是被Java语言赋予了特殊含义的单词,所有关键字的字母都是小写。

按功能分类的关键字

1. 用于定义数据类型的关键字
class、interface、byteshortintlongfloatdoublecharbooleanvoid
2. 用于定义数据类型值的关键字
truefalsenull
3. 用于定义流程控制的关键字
ifelseswitchcasedefaultwhiledoforbreakcontinuereturn
4. 用于定义访问权限修饰符的关键字
privateprotectedpublic
5. 用于定义类、函数、变量修饰符的关键字
abstractfinalstaticsynchronized
6. 用于定义类与类之间关系的关键字
extends、implements
7. 用于定义建立实例及引用实例,判断实例的关键字
newthissuperinstanceof
8. 用于异常处理的关键字
trycatchfinallythrowthrows
9. 用于包的关键字
packageimport
10. 其他修饰符及关键字
nativestrictfptransientvolatileassert

标识符

标识符是在程序中自定义的一些名称。

组成规则

  • 字母
  • 数字
  • 符号 _$

定义规则

  • 开头不能是数字
  • 不能使用关键字

Java命名规范

类型命名规范示例
包名多个单词组成时所有字母都小写com.example.util
类和接口名多个单词组成时,所有单词的首字母大写StudentManager
变量和函数名多个单词组成时,第一个单词首字母小写,其他单词首字母大写getUserName()
常量名所有字母都大写,多个单词用下划线连接MAX_VALUE

运算符

1. 算术运算符

运算符说明示例
+加法a + b
-减法a - b
*乘法a * b
/除法a / b
%取余a % b
++自增a++++a
--自减a----a
转义字符
  • \n - 换行
  • \b - 退格
  • \r - 回车(Windows系统中回车符是 \r\n
  • \t - 制表符(Tab)

2. 赋值运算符

运算符说明等价形式
=赋值a = b
+=加等a += ba = a + b
-=减等a -= ba = a - b
*=乘等a *= ba = a * b
/=除等a /= ba = a / b
%=取余等a %= ba = a % b

3. 比较运算符

运算符说明返回值
==等于boolean
!=不等于boolean
>大于boolean
<小于boolean
>=大于等于boolean
<=小于等于boolean

4. 逻辑运算符

运算符说明特点
&逻辑与(并且)两边都会执行
|逻辑或(或者)两边都会执行
^异或true ^ true = false
!逻辑非取反
&&短路与左边为false时,右边不执行
||短路或左边为true时,右边不执行

5. 位运算符

运算符说明示例
<<左移n << xn * 2^x
>>右移n >> xn / 2^x
>>>无符号右移高位总是补0
&位与按位与操作
|位或按位或操作
^位异或一个数异或同一个数两次,结果还是原数
~位取反按位取反

6. 三元运算符

格式:

(条件表达式) ? 表达式1 : 表达式2;

说明:

  • 条件表达式为 true 时,运算结果是表达式1
  • 条件表达式为 false 时,运算结果是表达式2

示例:

int max = (a > b) ? a : b;  // 取a和b中的较大值

常量

常量表示不能改变的数值。

Java中的常量类型

  1. 整数常量

    • 十进制:123
    • 八进制:0123(以0开头)
    • 十六进制:0x123(以0x开头)
  2. 小数常量

    • 3.142.5f1.0d
  3. 布尔型常量

    • truefalse
  4. 字符常量

    • 用单引号标识:'a''1''中'
  5. 字符串常量

    • 用双引号标识:"Hello""Java"
  6. null常量

    • null

变量

变量用于将不确定的数据进行存储,它会在栈内存中开辟空间。

定义变量

数据类型 变量名;

示例:

int x;

赋值变量

变量名 = 初始化值;

示例:

x = 5;

变量的分类

按作用域分类
变量类型作用域内存位置说明
成员变量(全局变量)整个类堆内存跟随对象的创建而产生
局部变量函数或语句块内栈内存作用范围有限

函数

函数(也叫方法)是定义在类中具有特定功能的一段独立小程序。函数可以将功能代码进行封装,便于复用,提高代码的复用性。

函数的格式

修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2, ...) {
    执行语句;
    return 返回值;
}

注意事项

  • 函数内不可以定义函数,只能调用函数
  • 如果函数没有返回值,返回值类型定义为 voidreturn 语句可以省略

函数重载(Overload)

在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数参数类型不同即可,与返回值类型无关。

示例:

public int add(int a, int b) { return a + b; }
public double add(double a, double b) { return a + b; }
public int add(int a, int b, int c) { return a + b + c; }

函数的分类

1. 主函数
  • 作用:程序的入口
  • 格式public static void main(String[] args)
2. 构造函数
  • 特点
    • 不需定义返回值类型
    • 函数名和类名相同
    • 不能写 return
    • 对象创建时自动调用,用于对象初始化
3. 普通函数
  • 特点:调用时才执行
构造代码块
  • 作用:给对象进行初始化
  • 特点:对象创建时运行,优先于构造函数执行

类与对象

是Java程序的基本单位,是对现实生活中事物的描述,是对象的模板。

定义类
public class 类名 {
    // 类的内容
}

对象

对象是类通过 new 关键字创建出来的一个实体,是可被操作的具体实例。

创建对象
类名 对象名 = new 类名();

对象初始化过程

Object o = new Object(); 为例:

  1. 因为使用了 new,所以先找到 Object.class 文件并加载到内存
  2. 执行该类中的静态代码块,给 Object.class 类进行初始化
  3. 堆内存中开辟空间,分配内存地址
  4. 在堆内存中建立对象的特有属性,并进行默认初始化
  5. 对属性进行显式初始化
  6. 对对象进行构造代码块初始化
  7. 对对象进行与之对应的构造函数初始化
  8. 将内存地址赋给栈内存中的变量 o

匿名对象

当对象的方法只调用一次时,可以使用匿名对象。

特点:

  • 没有引用变量
  • 可以作为实际参数进行传递
  • 使用完毕后立即成为垃圾

示例:

// 普通对象
Person p = new Person();
p.show();

// 匿名对象
new Person().show();

// 匿名对象作为参数
method(new Person());

总结

Java基础概念体系

Java基础
├── 语法基础
│   ├── 关键字(52个保留字)
│   ├── 标识符(命名规则和规范)
│   └── 运算符(6大类运算符)
├── 数据存储
│   ├── 常量(6种常量类型)
│   └── 变量(成员变量vs局部变量)
└── 程序结构
    ├── 函数(方法定义和重载)
    └── 类与对象(面向对象基础)

学习要点

  1. 关键字:理解各类关键字的用途和分类
  2. 命名规范:遵循Java标准命名约定
  3. 运算符优先级:掌握各种运算符的使用和优先级
  4. 内存分配:理解栈内存和堆内存的区别
  5. 对象生命周期:掌握对象的创建和初始化过程

最佳实践

  1. 代码规范:严格遵循Java命名规范
  2. 内存管理:合理使用局部变量和成员变量
  3. 方法设计:合理使用方法重载,提高代码复用性
  4. 对象使用:在适当场景下使用匿名对象

通过掌握这些Java基础概念,为深入学习Java面向对象编程和高级特性打下坚实的基础。