Java中方法的介绍与简单使用

目录

1.方法的介绍

2.方法的定义和调用

2.1方法的定义

2.2方法的调用

3.方法的重载

3.1重载方法的定义

3.2重载方法的调用


1.方法的介绍

什么是方法(⊙_⊙)?

学术的说,方法将具有独立功能的代码块组织成一个整体,使其具有特殊功能的代码集

而通俗的来讲,用来解决某件事情的办法,就叫方法。

比如我们在Java学习过程中遇到过很多相似的问题,比如经常性的需要对某一个数组进行遍历,

但如果每一次都要重复前面进行过无数次的工作,那就太枯燥了,这个时候,方法就派上了用场:

上图就是一个遍历数组的方法,然后再主函数里调用这个方法:

 

这样就完成了一个方法的编写和调用

非~常~好~用~

这里主要是了解方法的作用,具体的编写和使用过程我们后面再进行学习。

2.方法的定义和调用

2.1方法的定义

 如果我们想像上面一样调用一个方法来的话,就需要先定义一个方法。

知识点:方法必须先定义后调用,否则程序将报错

那么该怎样定义一个方法呢?

public static 返回类型 方法名称([参数类型 变量, ......]) {

        方法体代码;

        return [返回值];]

}

通过上面的代码就可以完成一个方法的定义。

看到这里可能会有细心地同学发现这里的定义方法怎么跟上面的例子有些不一样呢?

没错,看到这里我们引入几个新概念,带参方法、无参方法,有返回值的方法和无返回值的方法

一个方法可以有多个参数,也可以没有参数

方法定义时,参数中的数据类型变量名都不能缺少,缺少任意一个程序将报错
方法定义时,多个参数之间使用逗号( )分隔
方法可以有返回值,也可以没有
方法的返回值通常会使用变量接收,否则该返回值将无意义

无参方法定义:

public static void 方法名     ( )  { … … }
public static void method    ( ) { … … }

带参方法定义(单个参数):

  public static void 方法名     ( 数据类型 变量名 )  { … … }
  public static void method    int   a ) { … … }

 带参方法定义(多个参数):

  public static void 方法名   ( 数据类型 变量名 1 ,数据类型 变量名 2 …… ) { … … }
 public static void method  int  number1 int  number2 ) { … … }

带返回值的方法定义:

public static 数据类型   方法名 ( 参数 ) {

               return 数据 ;

  }

public static   int   method ( int a, int b ) {
         
 return  1 ;

  }

2.2方法的调用

无参方法调用:

方法名 ( ) ;
method ( ) ;

带参方法调用(单个参数):

方法名 ( 变量名/常量值 ) ;
method( a ) ;

带参方法调用(多个参数)

方法名 ( 变量名1/常量值1 ,变量名2/常量值2 ) ;
getMax ( 5,6 ) ;

  带返回值方法调用:

数据类型 变量名 = 方法名 ( 参数 ) ;
  int  flag =  method ( 5 );
注意:方法的返回值通常会使用变量接收,否则该返回值将无意义
因为带返回值方法不像不带返回值的方法一样在函数内部将计算结果打印出来,所以说我们需要一个变量将方法调用的结果接收,再去输出这个变量,这样就能得到调用方法的结果了。

3.方法的重载

3.1重载方法的定义

什么叫方法的重载呢?

在同一个类中,参数不同,类型不同,或者数量不同的同名方法,就叫方法的重载。

并且重载与返回值无关,不能通过返回值来判定两个方法是否相互构成重载

 

 

如上图,两个方法的方法名一致,但参数的数量不相同,这样就实现了方法的重载。

3.2重载方法的调用

重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式, 如下图

 

 

  • 14
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 19
    评论
Semaphore 是 Java 的一个同步工具类,用于控制同时访问某个资源的线程数量。它维护了一组许可证,每个许可证都表示一个线程可以访问共享资源的权限。Semaphore 通过 acquire() 方法获取许可证,release() 方法释放许可证。 Semaphore 的主要作用是限制并发访问量,可以控制同时执行某个操作的线程数量。常见的使用场景包括线程池限流、数据库连接池等。 Semaphore 的构造方法有两种形式: 1. Semaphore(int permits):创建一个具有指定许可证数量的 Semaphore 对象。 2. Semaphore(int permits, boolean fair):创建一个具有指定许可证数量和公平性设置的 Semaphore 对象。公平性设置指定是否采用公平策略来分配许可证。 Semaphore 的常用方法包括: - acquire():获取一个许可证,如果没有可用的许可证则阻塞。 - acquire(int permits):获取指定数量的许可证,如果没有足够的许可证则阻塞。 - release():释放一个许可证。 - release(int permits):释放指定数量的许可证。 - availablePermits():返回当前可用的许可证数量。 以下是一个使用 Semaphore 的简单示例: ```java import java.util.concurrent.Semaphore; public class Example { public static void main(String[] args) { Semaphore semaphore = new Semaphore(3); // 创建一个许可证数量为3的 Semaphore 对象 // 创建多个线程 for (int i = 0; i < 5; i++) { Thread thread = new Thread(() -> { try { semaphore.acquire(); // 获取一个许可证 System.out.println("Thread " + Thread.currentThread().getId() + " is accessing the resource."); Thread.sleep(2000); // 模拟线程执行一段时间 } catch (InterruptedException e) { e.printStackTrace(); } finally { semaphore.release(); // 释放许可证 System.out.println("Thread " + Thread.currentThread().getId() + " has released the resource."); } }); thread.start(); } } } ``` 在上面的示例,创建了一个许可证数量为3的 Semaphore 对象。然后创建了5个线程,每个线程通过 acquire() 方法获取许可证,执行一段时间后再通过 release() 方法释放许可证。由于 Semaphore 的许可证数量为3,所以最多只有3个线程可以同时访问资源,其他线程需要等待。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值