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

【日撸 Java 三百行】Day 3(注释,基本if语句,函数调用)

目录

Day 3:注释,基本if语句与函数

一、关于头部注释

 二、基本 if 语句

 三、函数调用

小结 


Day 3:注释,基本if语句与函数

Task:

  • if then else.
  • 方法(函数)调用: 增加代码的复用性.
  • 方法(函数)头部规范的注释, 是后期生成文档的基础.

一、关于头部注释

1. 作者相关信息

        代码注释向阅读者说明代码除了内在逻辑信息之外其余信息,包括辅助理解与说明编写者等内容。一个完善的代码开头总却少不了作者信息。
        为了避免每次开始自己的代码时都要手动添加信息,eclipse 为我们提供了一种方便设置。这一步作者在Day 1的环境配置中已经完成(参考博文:【日撸 Java 三百行】Day 1-2(环境搭建与基本运算)-CSDN博客),这里单独挑出这一部分重新说明一下。
        (1)找到 Window → Preferences,在左上角的输入框中输入Code Templates,找到Java → Code Style → Code Templates,在Code Templates视窗中选择Code, 配置代码模板(即 创建类时,自动生成注释)

        (2)选择Code → New Java files 配置创建类时的注释模板(即 自动生成注释),双击New Java files,在${filecomment}
${package_declaration} 和  ${typecomment} ${type_declaration} 之间添加如下代码到你的Pattern中:

/**** @版权 : Copyright (c) 2017-2018 *********公司技术开发部* @author: 作者姓名(一般是写姓名的拼音)* @E-mail: 邮箱* @版本: 1.0* @创建日期: ${date} ${time}* @ClassName ${type_name}* @类描述-Description:  ${todo}(这里用一句话描述这个方法的作用)* @修改记录:* @版本: 1.0*/

         操作示意图如下:

        其中,可以利用说明符“${}”支持相关的信息宏定义,当然,个人项目按照自己的习惯就好,但是,若自己的编写内容要在一个标准化环境下或者一个项目组中应用的话,还是以组内标准要求为主。

        完成以上工作后,开始创建今天的项目,可以发现,这里已经自动生成作者信息了。

2. 函数及类的头部注释

       (1)找到 Window → Preferences,在左上角的输入框中输入Code Templates,找到Java → Code Style → Code Templates,在Code Templates视窗中选择Comments,配置注释模板(即 alt+shift+j 手动添加注释,提示:1、将光标放到类名上,按下快捷键 alt+shift+j 会添加类的注释。2、将光标放到方法名上,按下快捷键 alt+shift+j 会添加方法的注释)

/**** @版权 : Copyright (c) 2017-2018 *********公司技术开发部* @author: 作者姓名(一般是写姓名的拼音)* @E-mail: 邮箱* @版本: 1.0* @创建日期: ${date} ${time}* @ClassName ${type_name}* @类描述-Description:  ${todo}(这里用一句话描述这个方法的作用)* @修改记录:* @版本: 1.0*/

         (2)选择Comments → Types 配置类的注释模板(即 手动添加注释),双击Types,添加如下代码到你的Pattern中:

/*** @Title: ${enclosing_method}* @Description: ${todo}(这里用一句话描述这个方法的作用)* ${tags}    參數描述* @return ${return_type}  返回类型* @throws*/

        具体操作示意图如下:

        配置类注释模板:

         配置方法注释模板:

        完成了之后,我们试着创建一个main函数,然后下面两种方式创建我们的注释:
        第一种,在函数上方输入/**,然后回车即可快速生成注释
请添加图片描述
        第二种是光标选中我们的函数名,然后快捷Shift+Alt+J 可快速生成
请添加图片描述

 二、基本 if 语句

        这里使用的绝对值计算来验证条件语句,这是因为绝对值计算可以展开为简单的分段函数,符合if-else语句的使用环境。
        代码如下:

package basic;/*** The usage of sth.** @author: Changyang Hu joe03@foxmail.com* @date created: 2025-05-06*/
public class IfStatement {/************************ The entrance of the program.* * @param args Not used now.**********************/public static void main(String args[]) {int tempNumber1, tempNumber2;// Try a positive valuetempNumber1 = 5;if (tempNumber1 >= 0) {tempNumber2 = tempNumber1;} else {tempNumber2 = -tempNumber1;} // Of ifSystem.out.println("The absolute value of " + tempNumber1 + " is " + tempNumber2);// Try a negative value// Lines 36 through 42 are the same as Lines 24 thorough 30tempNumber1 = -3;if (tempNumber1 >= 0) {tempNumber2 = tempNumber1;} else {tempNumber2 = -tempNumber1;} // Of ifSystem.out.println("The absolute value of " + tempNumber1 + " is " + tempNumber2);}// Of main
}// Of class IfStatement

        运行结果如下:

 三、函数调用

        将功能封装为函数,能够有效的提高代码的可阅读性以及结构性。观察上述示例,我们发现我们可以将绝对值的判断封装为一个 abs() 函数。
        更改后,代码如下:

package basic;/*** The usage of sth.** @author: Changyang Hu joe03@foxmail.com* @date created: 2025-05-06*/
public class IfStatement {/************************ The entrance of the program.* * @param args Not used now.**********************/public static void main(String args[]) {int tempNumber1, tempNumber2;// Now we use a method/function for this purpose.tempNumber1 = 7;System.out.println("The absolute value of " + tempNumber1 + " is " + abs(tempNumber1));tempNumber1 = -9;System.out.println("The absolute value of " + tempNumber1 + " is " + abs(tempNumber1));}// Of main/************************ The absolute value of the given parameter.* * @param paraValue The given value.* @return The absolute value of the paraValue.**********************/public static int abs(int paraValue) {if (paraValue >= 0) {return paraValue;} else {return -paraValue;} // Of if}// Of abs
}// Of class IfStatement

        运行结果如下:

        由于 Java 是延伸于 C,故其构造函数的方式与 C++ 几乎一致,回顾之前的 C++ 相关知识:
【C++】第3章 类和对象进阶_第三章 类和对象进阶-CSDN博客

        需要着重注意的点是:

  • 函数使用过程中,注意函数头部的关键字使用。这里对函数(方法)名加以“static”关键字,使得函数修饰为静态方法,这使得无需本类的对象即可调用此方法。相关定义与C++类似。
  • 其中“public”访问修饰符说明了方法的使用权限,这里可类比C++的类中方法的构造,是最低的限制权限,基本上是任何类,子类,包都可以访问。基本上来说,定义一个普通函数都是以public static作为基本的修饰。

        具体权限可以参考下图:

         与 C++ 唯一的不同,在于包的定义(C++没有这个概念)。

        对于函数的声明,师兄的博客中有一张很不错的图片:


小结 

        Java 是 C 语言延伸出来的语言,故其逻辑运算与条件运算都没有较大的变化,在已有 C/C++ 相关基础后,更加需要注意的应该是属于 Java 的语法规则。

        同时,对于注释方案,需要一定的规范性,这一点无论是什么语言,都应该有意识的去培养。

http://www.xdnf.cn/news/4198.html

相关文章:

  • Vue 2.0 详解全教程(含 Axios 封装 + 路由守卫 + 实战进阶)
  • OpenCV 图形API(78)图像与通道拼接函数-----调整图像大小的函数resize()
  • C# 方法(值参数和引用参数)
  • mysql 如何查询数据库链接日志
  • Spring 中四种常见初始化方法,对比 static {} 和 @PostConstruct 在并发,Spring 加载顺序大致为: JVM 加载类
  • 生成了一个AI算法
  • 网络安全的范式革命:从被动防御到 AI 驱动的主动对抗
  • 基于大模型的自然临产阴道分娩全流程预测与方案研究报告
  • 开个帖子记录一下自己学spring源码的过程
  • Spyglass:官方Hands-on Training(三)
  • 数据中台架构设计
  • c++类【发展】
  • 【全面解析】Poco C++ Libraries 模块详解与使用指南
  • UE5 使用插件进行Audio2face和UE5的实时链接并实时输出嘴型
  • 多模态训练与微调
  • 突破v0.dev对话限制的两种方法
  • k8s node 报IPVS no destination available
  • 19.第二阶段x64游戏实战-vector容器
  • 二叉树的最大深度(简单)
  • 标题:基于自适应阈值与K-means聚类的图像行列排序与拼接处理
  • LintCode第484题-交换数组两个元素,第9题-Fizz Buzz 问题,第46题-主元素,第50题数组剔除元素后的乘积
  • 超表面加工流程
  • 从零开始了解数据采集(二十二)——塑胶制品行业趋势分析案例
  • (leetcode) 力扣100 6.三数之和 (双指针)
  • 卷积神经网络的简单实战项目
  • 大模型——GraphRAG基于知识图谱+大模型技术构建的AI知识库系统
  • 怎样用 esProc 实现多数据库表的数据合并运算
  • 深入理解 Linux 阻塞IO与Socket数据结构
  • 《脑机接口与AI:如何让瘫痪患者用“意念”实现创作?》
  • 在 PyTorch 中借助 GloVe 词嵌入完成情感分析