Java-模块一

news/2025/3/22 3:32:44/

Java之父

詹姆斯高斯林

开发三步骤

  • 编写(后缀为java
  • 编译(javac,生成一个.class文件)
  • 运行(java class文件,不需要后缀名了)

文档注释和注释的区别

文档注释(Documentation Comments)和普通注释(Comments)都是代码中用于添加非执行性文本的方式,但它们的目的和使用场景有所不同。

文档注释

文档注释类容可以通过javadoc命令生成一个文档(API文档),能快速对此类以及此类中实现的功能进行快速的了解

  • 目的:主要用于生成软件文档。它们描述了代码的规格说明,如类的功能、方法的作用、参数的意义及返回值等信息。
  • 格式:不同编程语言有不同的格式要求。例如,在Java中,通常以/**开头,并以*/结束,其中可以包含特定的标签如@param@return等来详细描述方法或类。
  • 工具支持:有许多工具可以读取这些注释并自动生成HTML、PDF等格式的文档。比如,Java中有Javadoc工具,Python有Sphinx等。
  • 位置:一般放置在类、接口、方法、字段等定义之前。

普通注释

  • 目的:主要是为了给开发者提供代码内部逻辑或者意图的解释,帮助理解代码工作原理,不会被编译器或解释器处理。
  • 格式:同样根据编程语言的不同而变化。例如,在C++或Java中,单行注释以//开始,多行注释以/*开始并以*/结束;在Python中,单行注释以#开始。
  • 工具支持:普通注释不被专门用于生成外部文档的工具所解析,主要是为了代码维护和阅读方便。
  • 位置:可以在代码的任何地方添加,用于解释前后相关的代码段。

简而言之,文档注释更侧重于对外部使用者展示代码库的功能与使用方法,而普通注释则侧重于对开发团队内部成员提供代码理解和维护的帮助。

Helloworld

java">/*
public class test定义一个类
class:代表就是类,类是java程序最基本的组成单元,所有代码都需要在类中写
test:类名,必须和java名保持一致
*/
public class test{/*public static void main(String[] args):main方法,是程序的入口jvm执行代码,必须从main方法开始*/public static void main(String[] args){//打印语句System.out.println("Hello word")}
}

关键字

  • abstract:表明一个类或方法是抽象的,意味着它需要被继承或实现。
  • assert:用于测试条件是否为真,主要用于调试。
  • boolean:表示布尔类型的数据,其值只能为true或false。
  • break:用于立即退出循环或switch语句。
  • byte:一种基本数据类型,表示8位有符号整数。
  • case:switch语句中的一个可能分支。
  • catch:用于捕获try块中抛出的异常。
  • char:表示16位Unicode字符的基本数据类型。
  • class:定义类的关键字。
  • const:保留关键字但未使用,通常使用final来代替常量的定义。
  • continue:跳过当前循环体中剩余的语句,直接进入下一次循环。
  • default:switch语句中的默认分支,也可用于接口中的默认方法。
  • do:与while一起使用形成do-while循环。
  • double:表示双精度浮点数的基本数据类型。
  • else:if语句中的另一个选择路径。
  • enum:定义枚举类型。
  • extends:用于指示一个类是从另一个类派生,或者一个接口继承自另一个接口。
  • final:使类、方法或变量不可更改。
  • finally:用于声明在try-catch结构中无论如何都会执行的一段代码。
  • float:表示单精度浮点数的基本数据类型。
  • for:一种循环结构,允许代码重复执行。
  • goto:保留关键字但未使用。
  • if:条件判断语句。
  • implements:表示一个类实现了某个接口。
  • import:引入其他包中的类和接口。
  • instanceof:检查对象是否是指定类型的实例。
  • int:表示32位有符号整数的基本数据类型。
  • interface:定义接口。
  • long:表示64位有符号整数的基本数据类型。
  • native:表示该方法是用平台相关的语言(如C或C++)实现的。
  • new:创建新对象实例。
  • null:表示空引用。
  • package:声明源文件所在的包。
  • private:访问控制符,限制成员只能在自己的类中访问。
  • protected:访问控制符,允许子类和同一个包中的所有类访问成员。
  • public:访问控制符,允许任何地方访问成员。
  • return:从方法中返回结果并退出方法。
  • short:表示16位有符号整数的基本数据类型。
  • static:表示属于类而不是类的实例的成员。
  • strictfp:严格浮点计算,确保浮点运算在不同平台上的一致性。
  • super:指代父类的对象,用于调用父类的方法或构造函数。
  • switch:多路分支语句,根据表达式的值选择执行多个语句块之一。
  • synchronized:用于指定只有一个线程可以访问的代码块或方法。
  • this:指代当前对象实例。
  • throw:手动抛出一个异常。
  • throws:声明一个方法可能抛出的异常。
  • transient:标记不需要序列化的字段。
  • try:尝试执行一段可能抛出异常的代码。
  • void:表示方法没有返回值。
  • volatile:保证变量对所有线程可见性,防止指令重排序优化。
  • while:当条件为真时重复执行一段代码。

字符编码

  1. 编码:保存数据的过程
  2. 解码:读取数据的过程
  3. 编码和解码的规范必须要一样
  4. 常见的两个编码规范
    • GBK:专门为中文设置,ANSI代表JDK,一个中文汉字在这占两个字节
    • UTF-8:一个汉字在这里占3个字节
    • dos默认编码集是jdk

java_112">源文件名(java文件名)与类名一致问题

类名其实不一定要和文件名相同,如果想要不同就把class前面的public去掉
一个Java文件中可以写多个类,但是public类、只能有一个
main方法必须写在public类中

小技巧

1、光标放在你想复制到行上,ctrl+d就实现复制当前行了
2、一次操作多行:预留出足够的空间,按住alt不放,鼠标往下拉


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

相关文章

持续集成(CI)/持续部署(CD)

背景 如果每个人都在自己的分支上工作,然后定期合并到主分支。可能会导致集成时出现很多问题,比如代码冲突、功能不兼容等等。CI的核心思想是通过自动化构建和测试,尽早发现问题,减少集成风险,提高开发效率。 优点 …

通向AGI的未来之路!首篇2D/视频/3D/4D统一生成框架全景综述(港科大中山等)

文章链接: https://arxiv.org/pdf/2503.04641 摘要 理解并复现现实世界是人工通用智能(AGI)研究中的一个关键挑战。为实现这一目标,许多现有方法(例如世界模型)旨在捕捉支配物理世界的基本原理&#xff0…

ruoyi 小程序使用笔记

1.上传图片 页面 <uni-forms-item label"退休证明(退休证)" name"retire"><uni-file-picker ref"imageUploadRetire" :limit"1" :auto-upload"false" select"upload"/> </uni-forms-item>js …

QT学习笔记3

一、2D绘图系统&#xff08;QPainter&#xff09; 1. 核心机制 QPainter工作流程 &#xff1a; cpp void Widget::paintEvent(QPaintEvent*) {QPainter painter(this); // 绑定到当前控件painter.setRenderHint(QPainter::Antialiasing); // 抗锯齿painter.drawLine(0,0,10…

基于 PHP+apache+MySql实现(Web)客户关系管理系统

小型 CRM 系统的开发 1 绪论 1.1 系统开发的背景 随着市场开放&#xff0c;各个企业之间的竞争逐渐加剧&#xff0c;并且也从独立的企业与企业之间的竞争发展成为了一个个群集之间的竞争。在这些群集中&#xff0c;不同的企业扮演着不同的角色&#xff0c;比如有原料供应商、…

ffmpeg库视频硬解码使用流程

FFmpeg 的硬解码&#xff08;Hardware Decoding&#xff09;通过调用 GPU 或专用硬件的编解码能力实现&#xff0c;能显著降低 CPU 占用率。 ‌一、FFmpeg 支持的硬件解码类型‌ FFmpeg 原生支持多种硬件加速类型&#xff0c;具体由 AVHWDeviceType 定义&#xff0c;包括&…

Python助力区块链互通——跨链桥接的实现与实践

Python助力区块链互通——跨链桥接的实现与实践 区块链技术的繁荣发展带来了巨大的生态创新,但也因各链之间的割裂局面限制了它们的潜力。例如,你或许想在以太坊上使用来自比特币的资产,却因两条链不互通而不得不求助于中心化交易所。要打破“链间壁垒”,跨链桥接(Cross-…

STM32配套程序接线图

1 工程模板 2 LED闪烁 3LED流水灯 4蜂鸣器 5按键控制LED 6光敏传感器控制蜂鸣器 7OLED显示屏 8对射式红外传感器计次 9旋转编码器计次 10 定时器定时中断 11定时器外部时钟 12PWM驱动LED呼吸灯 13 PWM驱动舵机 14 PWM驱动直流电机 15输入捕获模式测频率 16PWMI模式测频率占空…