首页 > 编程语言 > 详细

JAVA方法略解

时间:2021-01-05 18:58:22      阅读:21      评论:0      收藏:0      [点我收藏+]

简介

  • Java方法是语句的集合,它们在一起执行一个功能
  • 设计方法的原则:一个方法只完成一个功能,有利于后期扩展

语法

  • 修饰符:修饰符,这是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型
  • 返回值类型:方法可能会返回值。returnvalue Type 是方法返回值的数据类型。有些方法执行所需的操作,但没有
  • 返回值。在这种情况下,returnvaluetype 是关键字 void。
  • 方法名:是方法的实际名称。方法名和参数表共同构成方法签名。
  • 参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。形式参数:在方法被调用时用于接收外界输入的数据实参:调用方法时实际传给方法的数据。
  • 修饰符返回值类型方法名(参数类型参数名)
  • 方法体:方法体包含具体的语句,定义该方法的功能方法体

调用

  • 对象名.方法名(实参列表)

  • 当方法返回一个值时,方法调用通常被当作一个值

    int larger = max(20,40);
    
  • 当方法返回值是void时,方法调用一定是一条语句

    System.out.println("Hello");
    

方法的重载

  • 在一个类中,有相同的函数名称,但形参不同的函数
  • 规则
    • 方法名称必须相同
    • 参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)
    • 方法的返回类型可以相同也可以不相同
    • 仅仅返回类型不同不足以成为方法的重载
  • 理论解释
    • 方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配,以选择对应的方法,如果匹配失败,则编译器报错。

命令行传参

  • 有时候希望运行一个程序的时候再传递给他消息,这要靠传递命令行参数给main()函数实现。

可变参数

  • JDK1.5开始,Java支持传递同类型的可变参数给一个方法

  • 语法

    • 在指定参数类型后加一个省略号
  • 规则

    • 一个方法只能制定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。
  • 实例

    	public static void main (String[] args) {
    		//调用可变参数的方法
    		printMax(4, 3, 3, 2, 56.5);  
    		printMax(new double[] {1, 2, 3});
    	}
    	public static void printMax (double ... numbers) { // 可以传递无数double类型的参数 
    		if  (numbers.length ==0) { //判断是否有传递参数
    			System.out.println("No argument passed");
    			return; 
    			}
    		double result= numbers[0];//传入的参数本质是一个double类型的数组 
    		for  (int i = 1; i < numbers.length; i++) {
    			if (numbers[i] > result) {
    				result =numbers [i];
    				}
    			}
    		System.out.println("The max value is "+ result);
    	 }
    

递归

  • 可以用简单的程序来解决一些复杂的问题。它通常把一个大型复杂的问题层层转化为一个与原问题相类似的规模较小的问题来求解,递归策略只需少量的程序就可以描述出解题过程所需要的多次重复计算,大大减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合

  • 语法

    • 递归头:什么时候不调用自身方法。没有则死循环。
    • 递归体:什么时候需要调用自身方法
  • 实例

    	public static void main (String[] args) {
    		//阶乘
    		System.out.println(f(4));
    	}
    	public static int f(int n ) {
    		if(n==1) {
    			return 1;
    		}else {
    			return n*f(n-1);
    		}
    	}
    

技术分享图片

JAVA方法略解

原文:https://www.cnblogs.com/swiftyao/p/14236394.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!