【JavaSE】Java方法的使用攻略

简介: Java方法的使用攻略

1.方法的概念

在编程中,某段功能的代码可能频繁使用到,会出现以下问题:

  1. 开发效率低下,做了大量重复性的工作。
  2. 不利于维护,需要改动时,所有用到该段代码的位置都需要修改。

上面这些问题很容易解决,通过方法就可以搞定。

方法的概念:

  1. 方法就是一个代码片段. 类似于 C 语言中的 "函数"。
  2. 是能够模块化的组织代码(减少代码冗余)。
  3. 做到代码被重复使用, 一份代码可以在多个位置使用。
  4. 让代码可读性更高。
  5. 直接调用现有方法开发, 不必重复造轮子。

方法使用

2.1 方法定义方式

修饰符 返回值类型 方法名称([参数类型 形参 ...]){

方法体代码;

[return 返回值];

}

举例:

//      修饰符  返回值类型 方法名称  参数类型publicbooleanisLeapyear(inty){
if((y%400==0)||(y%4==0&&y%100!=0)){
returntrue;
        }else {
returnfalse;
        }
    }

注意:

  • 修饰符:现阶段直接使用public static 固定搭配
  • 返回值类型:如果方法有返回值,返回值类型必须要与返回的实体类型一致,如果没有返回值,必须写成 void
  • 方法名字:采用小驼峰命名
  • 参数列表:如果方法没有参数,()中什么都不写,如果有参数,需指定参数类型,多个参数之间使用逗号隔开
  • 方法体:方法内部要执行的语句
  • 在java当中,方法必须写在类当中
  • 在java当中,方法不能嵌套定义
  • 在java当中,没有方法声明一说


2.2 方法调用的执行过程

调用方法--->传递参数--->找到方法地址--->执行被调方法的方法体--->被调方法结束返回--->回到主调方法继续往下执行

3.方法重载

在自然语言中,一个词语如果有多重含义,那么就说该词语被重载了,具体代表什么含义需要结合具体的场景。 在Java中方法也是可以重载的。

举例:

publicstaticintadd(intx, inty) {
returnx+y;
    }
publicstaticdoubleadd(doublex, doubley) {
returnx+y;
    }
publicstaticdoubleadd(doublex, doubley, doublez) {
returnx+y+z;
    }
publicstaticvoidmain(String[] args) {
inta=add(1, 2); // 调用add(int, int)System.out.println(a);
doubleb=add(1.5, 2.5); // 调用add(double, double)System.out.println(b);
doublec=add(1.5,2.5, 3.5); // 调用add(double, double, double)System.out.println(c);
    }

当满足以下条件时才构成方法重载:

  • 方法名必须相同
  • 参数列表必须不同(参数的个数不同、参数的类型不同、类型的次序必须不同)
  • 与返回值类型是否相同无关
  • 编译器在编译代码时,会对实参类型进行推演,根据推演的结果来确定调用哪个方法

4.方法签名

在同一个作用域中不能定义两个相同名称的标识符。比如:方法中不能定义两个名字一样的变量,那为什么类中就 可以定义方法名相同的方法呢?


方法签名即:经过编译器编译修改过之后方法最终的名字。具体方式:方法全路径名+参数列表+返回值类型,构成方法完整的名字。

方法签名中一些特殊符号说明:

特殊符号 数据类型
V void
Z boolean
B byte
C char
S short
I int
J long
F float
目录
相关文章
|
9天前
|
Java
Java的方法详解
Java的方法是类中的重要组成部分,用于定义类的行为。方法可以接收参数、执行操作并返回结果。其基本语法包括返回类型、方法名、参数列表和方法体。方法支持重载,即同名但参数不同的多个方法;静态方法则直接通过类名调用,无需实例化。此外,Java还支持可变参数,允许方法接收不定数量的参数。通过访问修饰符如`public`、`protected`、`private`,可以控制方法的可见性。方法是实现类功能的基本单元,增强了程序的灵活性和复用性。
|
30天前
|
Java
Java系列之 重命名文件/图片,renameTo() 方法的使用
这篇文章介绍了Java中File类的renameTo()方法,包括其使用方式、参数、返回值以及一些使用时的注意事项,并通过示例代码演示了如何使用该方法来重命名文件。
Java系列之 重命名文件/图片,renameTo() 方法的使用
|
16天前
|
存储 Java 程序员
优化Java多线程应用:是创建Thread对象直接调用start()方法?还是用个变量调用?
这篇文章探讨了Java中两种创建和启动线程的方法,并分析了它们的区别。作者建议直接调用 `Thread` 对象的 `start()` 方法,而非保持强引用,以避免内存泄漏、简化线程生命周期管理,并减少不必要的线程控制。文章详细解释了这种方法在使用 `ThreadLocal` 时的优势,并提供了代码示例。作者洛小豆,文章来源于稀土掘金。
|
21天前
|
Java
用JAVA架建List集合为树形结构的代码方法
这段代码定义了一个表示树形结构的 `Node` 类和一个用于构建树形结构的 `TreeController`。`Node` 类包含基本属性如 `id`、`pid`、`name` 和 `type`,以及子节点列表 `children`。`TreeController` 包含初始化节点列表并将其转换为树形结构的方法。通过过滤和分组操作实现树形结构的构建。详情可见:[代码示例链接1](http://www.zidongmutanji.com/zsjx/43551.html),[代码效果参考链接2](https://www.257342.com/sitemap/post.html)。
28 5
|
23天前
|
安全 Java 开发者
【技术咖必看】Java异常处理新境界:throws关键字,打造万无一失的方法签名!
【技术咖必看】Java异常处理新境界:throws关键字,打造万无一失的方法签名!
32 3
|
23天前
|
安全 Java 程序员
【程序猿逆袭指南】Java高手的秘密武器:throws关键字,让你的方法签名霸气侧漏!
【程序猿逆袭指南】Java高手的秘密武器:throws关键字,让你的方法签名霸气侧漏!
15 3
|
24天前
|
Java Spring 容器
Java获取接口的所有实现类方法
这篇文章介绍了在Java中获取接口所有实现类的方法,包括使用JDK的ServiceLoader(SPI机制)和Spring Boot中的@Autowired自动注入及ApplicationContextAware接口两种方式。
43 1
|
26天前
|
监控 Java API
提升 Java 后台性能的十大方法
提升 Java 后台性能的十大方法
34 2
|
29天前
|
Java
|
29天前
|
安全 Java 测试技术
Java 中的阻塞方法
【8月更文挑战第22天】
22 4