当前位置: 首页 > news >正文

SE语法总结博文(附思维导图)

Java中的规范

注释

//单行注释
/*多行注释
*/
/**文档注释
*/

命名规范

命名时可以包含:字母、数字以及 下划线和 $ 符号等等。
但是不能以数字开头,也不能是关键字,且严格区分大小写。
类名:每个单词的首字母大写(大驼峰);
方法名:首字母小写,后面每个单词的首字母大写(小驼峰);
变量名:也用小驼峰;
包名:也用小驼峰;
接口名:大驼峰,一般加上首个字母写大写I;
异常名:大驼峰,一般最后以单词Exception结尾。

数据类型与变量

具体介绍在这篇文章:数据类型与变量详解

八大基本数据类型

整数:byte short int long;
浮点数:float double;
字符:char;
布尔类型:boolean;
除了int和char的包装类是Integer和character,其它都是将首字母大写,如long对应Long。

引用数据类型

类class;接口interface;数组[ ];字符串变量String。

变量

简单说一下规则:

访问修饰限定符 数据类型 变量名 =

如果是引用数据类型在等号后面就跟相应的实例化
是基本数据类型直接赋值就行

运算符

运算符的详细解析在这篇文章:运算符详解

算数运算符

加: +
减 :-
乘:*
除:/
取余:%
在除法时两边为整数结果为整数,Java中小数可以取余。

增量运算符

+=,-=,*=,/=,%=。
其实就是对算数运算符使用的一个简写,如a = a + 10和a += 10两个等价。

自增/减运算符

++ ,–。
口诀:前置先加加/减减,在运算;后置置先运算,再加加/减减。

关系运算符

相等 ==
不等 !=
大于 >
小于 <
大于等于 >=
小于等于 <=

逻辑运算符

逻辑与 &&
逻辑或 ||
逻辑非 !
注意逻辑短路现象,就是逻辑运算符两边的表达式只执行前面就决定了值,后面表达式就不会执行。

位运算符

按位与 & :对应位有0就是0
按位或 | :对应位有1就是1
按位异或 ^ :对应位相同位0,不同为1
按位取反 ~ :0,1互换

移位运算符

左移 <<
右移 >>
无符号右移 >>>

条件运算符(3目运算符)

表达式1?表达式2:表达式3

程序逻辑控制

程序逻辑控制的详细解析在这篇文章:程序逻辑控制详解

顺序结构

分支结构

if-else语句,switch-case语句。

循环结构

while循环,do-while循环,for循环。注意continue(除该次循环进入下一次)和break(出循环)的区别。

方法

详解方法在这篇文章:方法详解

方法定义格式

修饰符 返回值类型 方法名(参数表列){
}

方法重载

方法名同,参数一定要有不同,返回值无关。

递归

自己调用自己,使用时注意结束条件。

数组

详细讲解数组在这篇文章:数组详解

定义格式

类型 [] 数组名 = ;
在等号右边3种方式
1.{}
2.new 类型[]{}
3.new 类型[]          //长度不能省

二维数组定义格式

类型 [][] 数组名 = ;
在等号右边3种方式:
1.{{},{},{},······}
2.new 类型[][]{{},{},{},······}
3.new 类型[][]     //行不能省

遍历

使用循环遍历。

类和对象

类与对象的详解写了多篇文章,在写到具体内容时再给出详解文章链接。

类定义格式,类实例化

类定义以及实例化详解文章:类定义,实例化详解

class 类名{//成员变量//成员方法
}

通过new关键字实例化对象。

this引用

我们通常在类中成员方法用this来引用当前成员,防止成员与形参同名报错。

构造方法

方法名与类名一样的成员方法,在实例化对象时会自动调用。

封装

详细介绍封装在这篇文章:封装详解
封装就是访问限定修饰符给的不一样,让类,类的成员的访问权限不一样。

访问修饰限定符

private,default,protected,public。
在这里插入图片描述

static关键字

就记住static修饰的不依赖对象就行。

继承

详解继承在这篇文章:详解继承
继承之间使用关键字extends,子类会继承父类的一切。如果一个类不希望被继承就使用final修饰。

super

子类调用父类成员可以使用关键字super。

多态

向上转型和向下转型

将子类向父类转型为向上转型。

将父类向子类转型(强转)为向下转型。
向下转型要注意父类(有多个子类)是该子类转型过来的,一般使用instanceof关键字来判断。

重写

重写的格式:方法名,参数表列,返回类型(可以是父子类关系)都要相同。
重写的条件:继承体系下,方法不被private,static,final修饰;重写方法权限>=被重写方法。
重写重载区别:
在这里插入图片描述

抽象类

详解抽象类在这篇文章:抽象类详解

abstract关键字

被abstract修饰的类叫抽象类,修饰的方法叫抽象方法。
抽象类与普通类的区别就是可以包含抽象方法。

抽象方法

抽象方法可以没有具体实现,但是被子类继承一定要被重写。

因为抽象方法是必须被重写的,所以重写条件也适用。

接口

详解接口在这篇文章:接口详解

interface关键字

使用interface关键字修饰类就是接口,
‘子类’用implement实现接口。

接口特性

里面的方法默认为public abstract修饰。只能有default修饰的具体方法,JDK9后可以有private修饰的方法。
接口不能被实例化。

内部类

详解内部类在这篇文章:内部类详解

静态内部类,实例内部类,局部内部类,匿名内部类。

比较器

详解比较器在这篇文章:比较器详解

Comparable接口

一般要实现Comparable接口,重写CompareTo方法来比较。

Comparator接口

实现Comparator接口然后重写compare方法就可以实现自己的比较条件。

深拷贝与浅拷贝

详解深拷贝与浅拷贝在这篇文章:深拷贝与浅拷贝详解

拷贝都要实现Cloneable接口。
深拷贝与浅拷贝的区别就是深拷贝是重新开辟空间,浅拷贝是直接指向原来的空间。

String常用操作

详解String常用操作在这篇文章:String常用操作详解

要记住对String的改变都不会对原字符串进行改变。

异常

详解异常常用操作在这篇文章:

异常分类:运行时异常和编译时异常。

throw抛异常,try捕获异常,catch处理异常。

自定义异常:实现类然后继承运行时异常(RunTimeException)或 编译时异常(Exception)。

思维导图

在这里插入图片描述

相关文章:

SE语法总结博文(附思维导图)

Java中的规范 注释 //单行注释 /*多行注释 */ /**文档注释 */命名规范 命名时可以包含&#xff1a;字母、数字以及 下划线和 $ 符号等等。 但是不能以数字开头&#xff0c;也不能是关键字&#xff0c;且严格区分大小写。 类名&#xff1a;每个单词的首字母大写(大驼峰)&…...

STM32面试题

STM32面试题通常涉及STM32微控制器的特性、功能、应用以及编程知识。以下是一些可能的面试问题: STM32微控制器的基本介绍: STM32微控制器是由哪家公司生产的?STM32微控制器主要应用于哪些领域?STM32的特性和功能: STM32微控制器有哪些主要特性?请描述STM32的GPIO(通用输…...

【单片机】DS2431芯片,读写128个字节,程序

ds2431pt&r stm32读写程序&#xff1a; 部分程序&#xff1a; #include "sys.h" #include "delay.h" #include "usart.h"#include <stdio.h> #include <stdlib.h> #include <string.h>#include "sys.h" #incl…...

[DDR4] DDR 简史

依公知及经验整理&#xff0c;原创保护&#xff0c;禁止转载。 专栏 《深入理解DDR4》 存和硬盘&#xff0c;这对电脑的左膀右臂&#xff0c;共同扛起了存储的重任。内存以其超凡的存取速度闻名&#xff0c;但一旦断电&#xff0c;内存中的数据也会消失。它就像我们的工作桌面&…...

前端 CSS 经典:在 Vue3 中使用渐进式图片

1. 什么是渐进式图片 当我们网站会加载很多图片的时候&#xff0c;有些图片尺寸很大&#xff0c;加载就会很慢&#xff0c;会导致页面长时间陷入白屏状态&#xff0c;用户体验很不好。所以可以使用渐进式图片&#xff0c;先给用户展示模糊图&#xff0c;这些图尺寸小&#xff…...

毕业了校园卡怎么改套餐?

毕业了校园卡怎么改套餐&#xff1f; 毕业生校园卡99元套餐变更8元保号套餐教程 学弟学妹们恭喜毕业呀&#x1f393; 校园卡绑定了好多东西注销不掉又不想交高额月租的看过来。 今天一招教你更改校园卡套餐。 中国移动/电信/联通App 打开App&#xff0c;在首页右上角点击人工…...

每一个男人都曾有一个机器人的梦想

每一个男人都曾有一个机器人的梦想 我也有 每一个男人都曾有一个机器人的梦想。对于我来说&#xff0c;这个梦想始于童年时代&#xff0c;那时变形金刚风靡一时&#xff0c;几乎所有80后的孩子都为之疯狂。我是80后中的一员&#xff0c;那时候的科技还远没有如今这般发达&#…...

中望CAD 2025 (ZW3D2025) 简体中文修改版

名称&#xff1a;中望CAD 2025 (ZW3D2025) 简体中文修改版 描述&#xff1a;一款三维CAD设计工具&#xff0c;运行破解补丁ZW3D2025-2024-Patch执行修补。 链接&#xff1a;夸克网盘分享 &#x1f4c1; 大小&#xff1a;3.2GB &#x1f3f7; 标签&#xff1a;#PC软件 #CAD #设…...

CAN 通讯

波特率 波特率&#xff08;Baud Rate&#xff09;是指数据通信中每秒传输的符号&#xff08;或脉冲&#xff09;的数量。在CAN&#xff08;Controller Area Network&#xff09;通信中&#xff0c;波特率通常表示每秒传输的位数&#xff08;bit per second&#xff0c;bps&…...

第零篇——数学到底应该怎么学?

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么&#xff1f; 四、总结五、升华 一、背景介绍 宏观讲解数学定位&#xff0c;数学学习方式方法&#xff0c;再次详细学习…...

Spring Boot顶层接口实现类注入项目的方法

1、背景 在项目中&#xff0c;我们通常会具有同一特性的业务类定义一个顶层接口&#xff0c;让业务类实现这个接口&#xff0c;通过接口规范来管理这些类。我们将这些实现接口的业务类交托给Spring容器接口后&#xff0c;有时候需要根据业务类型来选择动态选择对应的业务类阿里…...

JDBC介绍-AI问答(通义千问)

一、JDBC介绍 介绍JDBC JDBC&#xff08;Java Database Connectivity&#xff09;是Java中用于连接和操作关系型数据库的标准API&#xff08;应用程序编程接口&#xff09;。它是由Sun Microsystems&#xff08;现在是Oracle的一部分&#xff09;开发&#xff0c;并随Java Deve…...

Spring AI探索

Spring AI概述 该Spring AI项目旨在简化包含人工智能功能的应用程序的开发&#xff0c;避免不必要的复杂性。 该项目从著名的 Python 项目&#xff08;例如 LangChain 和 LlamaIndex&#xff09;中汲取灵感&#xff0c;但 Spring AI 并非这些项目的直接移植。该项目的成立基于…...

【代码随想录算法训练Day39】LeetCode 62.不同路径、LeetCode 63.不同路径II

Day39 动态规划第二天 LeetCode 62.不同路径 二维dp数组的含义&#xff1a;走到位置为(i,j)的格子的走法为dp[i][j]种。 递推公式&#xff1a;dp[i][j]dp[i-1][j]dp[i][j-1]。 初始化&#xff1a;dp[i][0]和dp[0][j]都赋值为1. 递归顺序&#xff1a;从左往右&#xff0c;从上…...

浙大版PTA Python程序设计 题目与知识点整理(综合版)

目录 第一章 一、高级语言程序的执行方式 二、变量赋值与内存地址 三、字符编码 3.1 Unicode 3.2 ASCII&#xff08;American Standard Code for Information Interchange&#xff09; 四、编程语言分类按照编程范式分类 4.1 面向过程语言 4.2 面向对象语言 五、原码…...

HTML表单深度解析:构建互动的网页界面

表单是HTML中用于收集用户输入信息的重要元素&#xff0c;是网页与用户交互的关键组件。以下是一个典型的HTML表单示例&#xff0c;我们将会详细解析其中的各个元素及属性含义。 <form action"https://xx.xxx.xx/search" target"_self" method"ge…...

git 分支管理规范

分支命名 master 分支 master 为主分支&#xff0c;也是用于部署生产环境的分支&#xff0c;需要确保master分支稳定性。master 分支一般由 release 以及 hotfix 分支合并&#xff0c;任何时间都不能直接修改代码。 develop 分支 develop 为开发环境分支&#xff0c;始终保持…...

Spring Cloud Gateway 详解:构建高效的API网关解决方案

Spring Cloud Gateway 详解&#xff1a;构建高效的API网关解决方案 Spring Cloud Gateway 是 Spring Cloud 生态系统中用于构建 API 网关的核心组件。它基于 Spring WebFlux 构建&#xff0c;旨在提供简单且有效的方式来路由和增强 API 请求。以下是 Spring Cloud Gateway 的详…...

基于Quartus Prime18.1的安装与FPGA的基础仿真教程

Quartus是一种美国科技公司Intel&#xff08;英特尔&#xff09;公司开发的FPGA&#xff08;现场可编辑门阵列&#xff09;设计编译软件&#xff0c;用作设计、仿真、综合和布局、支持多种编程语言&#xff0c;包括VHDL、Verilog等&#xff0c;并具有丰富的功能和工具库&#x…...

AJAX 和 XML:现代 Web 开发的关键技术

AJAX 和 XML:现代 Web 开发的关键技术 引言 在当今的 Web 开发领域,AJAX 和 XML 是两项至关重要的技术。AJAX(Asynchronous JavaScript and XML)允许网页在不重新加载整个页面的情况下,与服务器交换数据和更新部分网页内容。而 XML(eXtensible Markup Language)则是一…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

Go 语言并发编程基础:无缓冲与有缓冲通道

在上一章节中&#xff0c;我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道&#xff0c;它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好&#xff0…...

云原生安全实战:API网关Kong的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关&#xff08;API Gateway&#xff09; API网关是微服务架构中的核心组件&#xff0c;负责统一管理所有API的流量入口。它像一座…...

免费数学几何作图web平台

光锐软件免费数学工具&#xff0c;maths,数学制图&#xff0c;数学作图&#xff0c;几何作图&#xff0c;几何&#xff0c;AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障

关键领域软件测试的"安全密码"&#xff1a;Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力&#xff0c;从金融交易到交通管控&#xff0c;这些关乎国计民生的关键领域…...

6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙

Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...

ui框架-文件列表展示

ui框架-文件列表展示 介绍 UI框架的文件列表展示组件&#xff0c;可以展示文件夹&#xff0c;支持列表展示和图标展示模式。组件提供了丰富的功能和可配置选项&#xff0c;适用于文件管理、文件上传等场景。 功能特性 支持列表模式和网格模式的切换展示支持文件和文件夹的层…...