Java方法(二)

简介: 一、前言本章主要内容:1.带参数方法的定义和调用方法定义:格式1:(带static的方法定义)示例图:​ 代码:错误示例1:参数类型不同​ 错误示例2:参数个数不同格式2:方法中不带static方法调用:带返回值的参数方法定义和调用方法定义格式:示例:​代码: 嵌套定义和嵌套调用错误写法:正确的写法:

一、前言


前面我们介绍了方法的定义概述和调用,也稍微拓展了一些其他章节相关的知识点,现在我


们来继续学习Java方法的内容。


本章主要内容:


1.带参数方法的定义和调用

2.带返回值的方法定义和调用


1.带参数方法的定义和调用


方法定义:


格式1:(带static的方法定义)


public static void 方法名(参数){
//方法内容
}


示例:


public static void compare(int a,int b){
      System.out.println(a>b?a:b);
}


注意:一个程序要想运行则比须要有main方法,程序就是从main方法进入的。所以比较完整的写法是:


示例图:

微信图片_20220105165512.png


代码:

package com.test;
public class 比较 {
    public static void main(String[] args) {
        compare(10,20);
    }
    public static void compare(int a,int b){
        System.out.println(a>b?a:b);
    }
}


注意:在定义方法时,调用中的参数要和方法中的参数一一对应,以及参数类型也要一一对


应,否则会报错。如上图中的compare(int,int)方法定义了两个int类型的方法,那么在其他方


法中(不一定是main方法)调用也要写两个int类型的参数。其实方法可以重载的,重载就是参


数个数或参数类型至少有一个不同...(下篇细讲)


错误示例1:参数类型不同

微信图片_20220105165610.png


错误示例2:参数个数不同

微信图片_20220105165616.png


格式2:方法中不带static


这个当main方法调用他时,则需要在main方法中先创建对象(以前讲过)


在同一类中,其他不带static方法可以直接调用其他方法(上篇讲过,不重复了)


方法调用:


格式是:方法名();


是不是超级简单,其中括号里的参数要和定义的参数一致。


如:compare(10,20);也可以通过Scanner数入参数



带返回值的参数方法定义和调用


仔细看是不是就只和上面那个多了返回值这三个字,实际上这定义的时候也是多这一个。


方法定义格式:


(也是分带不带static的,和上面一样,所以我就不分开讲了)


public  static 返回类型 方法名(参数){
//方法体
return 数据
}


如:

public static int compare(int a,int b){
   return a>b?a:b;
}


注:带返回值的方法必须要有return返回一个以上的数据,否则报错,而返回类型为


void的,可以有return,但是return后啥也不跟,直接return;即可。


示例:

微信图片_20220105165813.png


代码:

package com.test;
public class 比较 {
    public static void main(String[] args) {
       int a=compare(10,20);
        System.out.println(a);
    }
    public static int compare(int a,int b){
       return a>b?a:b;
    }
}


注:调用方法时,必须要有一个变量去接受返回类型(不接收也不会报错的),没有任何


变量去接受返回的值是没有任何意义的


嵌套定义和嵌套调用


方法不能嵌套定义,但是可以嵌套调用,


什么是嵌套定义其实就是一个方法套了另一个方法


什么是嵌套套用,就是各个方法的来往调用,一个方法可以调用一个或多个,


如方法a调用方法b,方法b调用了方法c、d等等。



错误写法:


public static void main(String[] args){
   public static void getmax(int a,int b){
   }
}


此时就有问题了,main方法嵌套了getmax方法。


正确的写法:


public static void main(String[] args){
} 
 public static void getmax(int a,int b){
   }
目录
相关文章
|
16天前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
56 4
|
26天前
|
Java API
Java 对象释放与 finalize 方法
关于 Java 对象释放的疑惑解答,以及 finalize 方法的相关知识。
45 17
|
20天前
|
Java 测试技术 Maven
Java一分钟之-PowerMock:静态方法与私有方法测试
通过本文的详细介绍,您可以使用PowerMock轻松地测试Java代码中的静态方法和私有方法。PowerMock通过扩展Mockito,提供了强大的功能,帮助开发者在复杂的测试场景中保持高效和准确的单元测试。希望本文对您的Java单元测试有所帮助。
59 2
|
1月前
|
算法 Java Linux
java制作海报二:java使用Graphics2D 在图片上合成另一个照片,并将照片切割成头像,头像切割成圆形方法详解
这篇文章介绍了如何使用Java的Graphics2D类在图片上合成另一个照片,并将照片切割成圆形头像的方法。
49 1
java制作海报二:java使用Graphics2D 在图片上合成另一个照片,并将照片切割成头像,头像切割成圆形方法详解
|
28天前
|
Java 开发者
在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口
【10月更文挑战第20天】在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口。本文揭示了这两种方式的微妙差异和潜在陷阱,帮助你更好地理解和选择适合项目需求的线程创建方式。
19 3
|
30天前
|
Java 大数据 API
别死脑筋,赶紧学起来!Java之Steam() API 常用方法使用,让开发简单起来!
分享Java Stream API的常用方法,让开发更简单。涵盖filter、map、sorted等操作,提高代码效率与可读性。关注公众号,了解更多技术内容。
|
28天前
|
Java 开发者
在Java多线程编程中,选择合适的线程创建方法至关重要
【10月更文挑战第20天】在Java多线程编程中,选择合适的线程创建方法至关重要。本文通过案例分析,探讨了继承Thread类和实现Runnable接口两种方法的优缺点及适用场景,帮助开发者做出明智的选择。
17 2
|
28天前
|
安全 Java
Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧
【10月更文挑战第20天】Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧,包括避免在循环外调用wait()、优先使用notifyAll()、确保线程安全及处理InterruptedException等,帮助读者更好地掌握这些方法的应用。
17 1
|
28天前
|
Java 开发者
Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点
【10月更文挑战第20天】Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点,重点解析为何实现Runnable接口更具灵活性、资源共享及易于管理的优势。
34 1
|
28天前
|
Java
在Java多线程编程中,`wait()`和`notify()`方法的相遇如同一场奇妙的邂逅
在Java多线程编程中,`wait()`和`notify()`方法的相遇如同一场奇妙的邂逅。它们用于线程间通信,使线程能够协作完成任务。通过这些方法,生产者和消费者线程可以高效地管理共享资源,确保程序的有序运行。正确使用这些方法需要遵循同步规则,避免虚假唤醒等问题。示例代码展示了如何在生产者-消费者模型中使用`wait()`和`notify()`。
27 1