java学习笔记:java所有关键字汇总、解析及应用

文章目录

    • 一、java的所有关键字汇总、解析及应用
      • 1. abstract
      • 2. assert
      • 3. boolean
      • 4. break
      • 5. byte
      • 6. case
      • 7. catch
      • 8. char
      • 9. class
      • 10. const
      • 11. continue
      • 12. default
      • 13. do
      • 14. double
      • 15. else
      • 16. enum
      • 17. extends
      • 18. final
      • 19. finally
      • 20. float
      • 21. for
      • 22. goto
      • 23. if
      • 24. implements
      • 25. import
      • 26. instanceof
      • 27. int
      • 28. interface
      • 29. long
      • 30. native
      • 31. new
      • 32. package
      • 33. private
      • 34. protected
      • 35. public
      • 36. return
      • 37. short
      • 38. static
      • 39. strictfp
      • 40. super
      • 41. switch
      • 42. synchronized
      • 43. this
      • 44. throw
      • 45. throws
      • 46. transient
      • 47. try
      • 48. void
      • 49. volatile
      • 50. while

一、java的所有关键字汇总、解析及应用

1. abstract

抽象关键字,用于修饰类和方法。当修饰类时,表示该类是抽象类,不能被实例化;当修饰方法时,表示该方法是抽象方法,只有方法的声明,没有方法的实现,需要在子类中重写

public abstract class Shape {public abstract void draw();
}public class Circle extends Shape {public void draw() {System.out.println("Drawing a circle");}
}

2. assert

断言关键字,用于在代码中进行断言,如果断言失败则抛出AssertionError异常

int x = 10;
assert x == 5 : "x should be 5";

3. boolean

布尔关键字,用于声明布尔类型变量,只能取true或false。

boolean isTrue = true;
boolean isFalse = false;

4. break

跳出循环或switch语句的关键字。

for (int i = 0; i < 10; i++) {if (i == 5) {break;}System.out.println(i);
}

5. byte

字节关键字,用于声明字节类型变量,范围为-128到127

byte b = 100;

6. case

用于switch语句中的分支。

int day = 3;
switch (day) {case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;case 3:System.out.println("Wednesday");break;default:System.out.println("Other day");
}

7. catch

用于捕获异常的关键字。

try {// 代码块
} catch (Exception e) {// 异常处理
}

8. char

字符关键字,用于声明字符类型变量,用单引号括起来。
char c = ‘A’;

9. class

类关键字,用于声明类。
public class MyClass {
// 类的成员和方法
}

10. const

已废弃的关键字,不再使用。

11. continue

跳过当前循环的剩余代码,继续下一次循环。

for (int i = 0; i < 10; i++) {if (i == 5) {continue;}System.out.println(i);
}

12. default

switch语句中的默认分支。

int day = 7;
switch (day) {case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;default:System.out.println("Other day");
}

13. do

循环关键字,用于执行循环体。

int i = 0;
do {System.out.println(i);i++;
} while (i < 5);

14. double

双精度浮点数关键字,用于声明双精度浮点数类型变量。

double d = 3.14;

15. else

条件语句中的否定分支。

int x = 5;
if (x > 10) {System.out.println("x is greater than 10");
} else {System.out.println("x is less than or equal to 10");
}

16. enum

枚举关键字,用于声明枚举类型。

enum Day {MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}
Day day = Day.MONDAY;

17. extends

继承关键字,用于声明类的继承关系。子类通过extends关键字继承父类的属性和方法,可以扩展父类的功能。

public class Animal {// 类的成员和方法
}public class Dog extends Animal {// 类的成员和方法
}

18. final

最终关键字,用于修饰类、方法和变量。当修饰类时,表示该类不能被继承;当修饰方法时,表示该方法不能被子类重写;当修饰变量时,表示该变量的值不能被修改。

final int x = 10;final void printMessage() {System.out.println("Hello");
}final class MyClass {// 类的成员和方法
}

19. finally

异常处理中的关键字,用于定义无论是否发生异常都会执行的代码块。

try {// 代码块
} catch (Exception e) {// 异常处理
} finally {// 无论是否发生异常都会执行的代码块
}

20. float

单精度浮点数关键字,用于声明单精度浮点数类型变量。

float f = 3.14f;

21. for

循环关键字,用于执行循环。

for (int i = 0; i < 5; i++) {System.out.println(i);
}

22. goto

已废弃的关键字,不再使用。

23. if

条件语句关键字,用于执行条件判断。

int x = 5;
if (x > 10) {System.out.println("x is greater than 10");
}

24. implements

实现关键字,用于实现接口。一个类可以实现多个接口,通过implements关键字实现接口中定义的方法。

public class MyClass implements MyInterface {// 类的成员和方法
}

25. import

导入关键字,用于导入其他包中的类。

import java.util.ArrayList;
import java.util.List;

26. instanceof

类型判断关键字,用于判断对象是否属于某个类或接口。

Animal animal = new Dog();
if (animal instanceof Dog) {System.out.println("animal is a dog");
}

27. int

整数关键字,用于声明整数类型变量。

int x = 10;

28. interface

接口关键字,用于声明接口。

public interface MyInterface {// 接口的方法
}

29. long

长整数关键字,用于声明长整数类型变量。

long l = 1000000000L;

30. native

本地方法关键字,用于声明本地方法。

public native void myMethod();

31. new

创建对象关键字,用于创建新的对象。

MyClass obj = new MyClass();

32. package

包关键字,用于声明包。

package com.example.myapp;

33. private

私有关键字,用于声明私有成员或方法,只能在类内部访问。

private int x;private void printMessage() {System.out.println("Hello");
}

34. protected

受保护关键字,用于声明受保护的成员或方法,只能在同一包内或子类中访问。

protected int x;protected void printMessage() {System.out.println("Hello");
}

35. public

公共关键字,用于声明公共成员或方法,可以在任何地方访问。

public int x;public void printMessage() {System.out.println("Hello");
}

36. return

返回关键字,用于从方法中返回值。

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

37. short

短整数关键字,用于声明短整数类型变量。

short s = 100;

38. static

静态关键字,用于修饰成员变量和方法。当修饰成员变量时,表示该变量属于类,而不是对象,所有对象共享同一个静态变量;当修饰方法时,表示该方法属于类,可以直接通过类名调用,无需创建对象。

public class MyClass {public static int x;public static void printMessage() {System.out.println("Hello");}
}

39. strictfp

精确浮点数关键字,用于声明浮点数计算结果的精确性。

public strictfp class MyClass {// 类的成员和方法
}

40. super

父类关键字,用于表示父类对象。可以通过super关键字调用父类的构造方法和方法。

public class Animal {public void eat() {System.out.println("Eating");}
}public class Dog extends Animal {public void eat() {super.eat(); // 调用父类的eat方法System.out.println("Eating bones");}
}

41. switch

条件语句关键字,用于执行多个分支中的一个。

int day = 3;
switch (day) {case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;    case 3:System.out.println("Wednesday");break;default:System.out.println("Other day");
}

42. synchronized

同步关键字,用于实现线程的同步,保证多个线程对共享资源的互斥访问。通过使用synchronized关键字修饰方法或代码块,可以确保同一时间只有一个线程执行该方法或代码块,其他线程需要等待。

public synchronized void myMethod() {// 代码块
}

43. this

当前对象关键字,用于表示当前对象。可以通过this关键字访问当前对象的属性和方法。

public class MyClass {private int x;public void setX(int x) {this.x = x; // 使用this引用当前对象的成员变量}
}

44. throw

抛出异常关键字,用于抛出异常。

throw new Exception("Something went wrong");

45. throws

声明异常关键字,用于声明方法可能抛出的异常。

public void myMethod() throws Exception {  
// 代码块
} 

46. transient

瞬态关键字,用于声明不需要序列化的成员变量。

public class MyClass implements Serializable {private transient int x; // 不需要序列化的成员变量
}

47. try

异常处理关键字,用于定义可能发生异常的代码块。

try {// 代码块
} catch (Exception e) {// 异常处理
}

48. void

无返回值关键字,用于声明方法没有返回值。

public void printMessage() {System.out.println("Hello");
}

49. volatile

修饰变量,表示该变量是易变的,即可能被多个线程同时访问和修改。使用volatile关键字修饰的变量,每次访问都会从主内存中读取最新的值,而不是使用线程的本地缓存。这样可以保证多个线程对该变量的操作是可见的,避免了数据不一致的问题。

public class MyClass {private volatile int x; // 声明易失变量
}

50. while

循环关键字,用于执行循环。

int i = 0;
while (i < 5) {System.out.println(i);i++;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/657229.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

走迷宫-bfs

package Test;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;public class Main {static int N 110,hh 0,tt -1,n,m;static int[][] g new int[N][N]; //用来存储迷宫static int[][] d new int[N][N]; //用来存储d[i…

【C/Python】Gtk部件ListStore的使用

一、C语言 在GTK中&#xff0c;Gtk.ListStore是一个实现了Gtk.TreeModel接口的存储模型&#xff0c;用于在如Gtk.TreeView这样的控件中存储数据。以下是一个简单的使用Gtk.ListStore的C语言示例&#xff0c;该示例创建了一个列表&#xff0c;并在图形界面中显示&#xff1a; …

EasyExcel实现Excel文件导入导出

1 EasyExcel简介 EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 github地址: https://github.com/alibaba/easyexcel 官方文档: https://www.yuque.com/easyexcel/doc/easyexcel Excel解析流程图: EasyExcel读取…

TensorFlow2实战-系列教程11:RNN文本分类3

&#x1f9e1;&#x1f49b;&#x1f49a;TensorFlow2实战-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Jupyter Notebook中进行 本篇文章配套的代码资源已经上传 6、构建训练数据 所有的输入样本必须都是相同shape&#xff08;文本长度&#xff0c;…

视网膜长尾数据

视网膜长尾数据 问题&#xff1a;视网膜疾病分类&#xff0c;解法&#xff1a;深度学习模型问题&#xff1a;数据复杂性处理&#xff0c;解法&#xff1a;多任务框架&#xff08;同时处理多种疾病&#xff09;和少量样本学习&#xff08;提高对罕见疾病的识别&#xff09;问题&…

记录解决报错--vue前后端分离,接口401(Unauthorized)

1.场景 前端访问不了后端接口。报错401。 2.解决步骤 ①在页面console.log(111)查看走到代码的位置没有。&#xff08;走到了&#xff0c;没问题&#xff09; ②查看vue.config.js配置。这段配置就是vue访问api的url。&#xff08;没问题&#xff09; devServer: {port: 80…

【Delphi】IDE 工具栏错乱恢复

由于经常会在4K和2K显示器上切换Delphi开发环境(IDE)&#xff0c;导致IDE工具栏错乱&#xff0c;咋样设置都无法恢复&#xff0c;后来看到红鱼儿的博客&#xff0c;说是通过操作注册表的方法&#xff0c;能解决&#xff0c;试了一下&#xff0c;果真好用&#xff0c;非常感谢分…

Java面试架构篇【一览众山小】

文章目录 &#x1f6a1; 简介☀️ Spring&#x1f425; 体系结构&#x1f420; 生命周期 &#x1f341; SpringMVC&#x1f330; 执行流程 &#x1f31c; SpringBoot&#x1f30d; 核心组件&#x1f38d; 自动装配&#x1f391; 3.0升级 &#x1f505; spring Cloud Alibaba&am…

获取依赖aar包的两种方式-在android studio里引入 如:glide

背景&#xff1a;我需要获取aar依赖到内网开发&#xff0c;内网几乎代表没网。 一、 如何需要获取依赖aar包 方式一&#xff1a;在官方的github中下载,耗时不建议 要从开发者网站、GitHub 存储库或其他来源获取 ‘com.github.bumptech.glide:glide:4.12.0’ AAR 包&#xff…

vue使用antv-x6 绘制流程图DAG图(二)

代码&#xff1a; <template><div class"graph-wrap" click.stop"hideFn"><Toobar :graph"graph"></Toobar><!-- 小地图 --><div id"minimap" class"mini-map-container"></div>…

基于SSM的游泳会员管理系统

末尾获取源码作者介绍&#xff1a;大家好&#xff0c;我是墨韵&#xff0c;本人4年开发经验&#xff0c;专注定制项目开发 更多项目&#xff1a;CSDN主页YAML 学如逆水行舟&#xff0c;不进则退。学习如赶路&#xff0c;不能慢一步。 目录 一、项目简介 二、开发技术与环境配…

MySQL-数据类型

文章目录 1. 数据类型概述2. 数值类型3. 日期时间类型4. 字符串类型 1. 数据类型概述 数据类型&#xff08;data_type&#xff09;是指系统中所允许的数据的类型。MySQL 数据类型定义了列中可以存储什么数据以及该数据怎样存储的规则。MySQL 的数据类型有大概可以分为 5 种&am…

【云原生】consul自动注册,实现负载均衡器与节点服务应用解耦,批量管理容器

目录 一、consul解决了什么问题&#xff1f; 二、consul的模式 三、consul的工作原理 四、实操consul连接负载均衡与容器 步骤一&#xff1a;完成consul的部署 步骤二&#xff1a;完成gliderlabs/registrator:latest镜像的拉取&#xff0c;并完成启动 步骤三&#xff1a;…

重写Sylar基于协程的服务器(1、日志模块的架构)

重写Sylar基于协程的服务器&#xff08;1、日志模块的架构&#xff09; 重写Sylar基于协程的服务器系列&#xff1a; 重写Sylar基于协程的服务器&#xff08;0、搭建开发环境以及项目框架 || 下载编译简化版Sylar&#xff09; 重写Sylar基于协程的服务器&#xff08;1、日志模…

15EG在PL端使用外部时钟驱动led灯

创建PL端的vivado工程在 pl_only_led中已经介绍过了&#xff0c;这里直接从创建好设计文件开始 打开设计文件修改里面代码&#xff0c;代码我也提供了&#xff0c;在工程文件夹下的file文件夹中 15eg这块板子有俩个外部晶振&#xff0c;分别时200M和74.25 M我们可以在原理图中找…

setTimeout和setInterval,用requestAnimationFrame实现setInterval和setTimeout

setInterval的缺点&#xff08;每个setTimeout产生的任务会直接push到任务队列中&#xff1b;而setInterval在每次把任务push到任务队列前&#xff0c;都要进行一下判断(看上次的任务是否仍在队列中)。因而我们一般用setTimeout模拟setInterval&#xff0c;来规避掉上面的缺点&…

16- OpenCV:轮廓的发现和轮廓绘制、凸包

目录 一、轮廓发现 1、轮廓发现(find contour in your image) 的含义 2、相关的API 以及代码演示 二、凸包 1、凸包&#xff08;Convex Hull&#xff09;的含义 2、Graham扫描算法- 概念介绍 3、cv::convexHull 以及代码演示 三、轮廓周围绘制矩形和圆形框 一、轮廓发现…

【图文详解】阿里云服务器放行高防IP加入安全组

打开阿里云的云服务器配置面板&#xff0c;在要操作实例的操作列找到更多 > 网络和安全组 > 安全组配置。 对已有安全组配置规则&#xff0c;或者直接添加安全组规则。 根据需要放通高防IP在内的IP段相应协议类型的端口访问。

QEMU - e1000全虚拟化前端与TAP/TUN后端流程简析

目录 1. Host -> Guest 2.Guest ->Host 3. 如何修改以支持TUN设备的后端&#xff1f; 4. 相关 QEMU 源码 5. 实验 1. Host -> Guest 2.Guest ->Host 3. 如何修改以支持TUN设备的后端&#xff1f; 1. 简单通过后端网卡名字来判断是TUN还是TAP。 2. 需要前端全…

Adobe Camera Raw forMac/win:掌控原始之美的秘密武器

Adobe Camera Raw&#xff0c;这款由Adobe开发的插件&#xff0c;已经成为摄影师和设计师们的必备工具。对于那些追求完美、渴望探索更多创意可能性的专业人士来说&#xff0c;它不仅仅是一个插件&#xff0c;更是一个能够释放无尽创造力的平台。 在数字摄影时代&#xff0c;R…