第二章-Java基础(函数)

函数(方法)讲解的内容

1.函数的定义

2.函数的特点

3.函数的应用

4.函数的重载

 

函数-定义

     什么是函数

     函数就是定义在类中具有特定功能的一段独立小程序.

     函数也称为方法

 

 

	public static int add(int i,int j){
		return i+j;
	}
}

 

 函数-格式

     修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,..)

      {

                             执行语句;

                             return 返回值;

      }

 

       返回值类型:函数运行后得到的结果的数据类型.

       参数类型   : 是形式参数的数据类型

       形式参数   : 是一个变量,用于存储调用函数时传递给函数的实际参数(参加运算的数据)

       实际参数   :传递给形式参数的具体数值

       return        :用于结束函数.

       返回值       :该函数运算后的结果,该结果会返回给调用者. 

Java代码 
  1. public class methodDemo {  
  2.       
  3.     public static void main(String[] args) {  
  4.         int x = 3;  
  5.         int z = 5;  
  6.           
  7.         int c = add(x,z);  
  8.         System.out.println(c);  
  9.     }  
  10.       
  11.     public static int add(int i,int j){  
  12.         return i+j;  
  13.     }  
  14. }  

 

函数-细节

 

/**
	 * 特殊情况:
	 *  功能没有具体的返回值.
	 *  
	 *  这时return的后面直接用分号结束.
	 *  返回值类型怎么体现呢?因为没有具体值,所以不可以写具体的数据类型.
	 *  在java中只能用意个关键字来表示这种情况,关键字是:void
	 *  
	 *  总结:没有具体返回值时,返回值类型用void来表示
	 */
	
	public void testmethod(){
		
		return ;
	}

 函数-特点

  定义函数可以将功能代码进行封装

  便于对该功能进行服用

  函数只有被调用才会被执行

  函数的出现提高了代码的复用性

  注意:

     函数中只能调用函数,不可以再函数内部定义函数

     定义函数时,函数的结果应该返回给调用者,交由调用者处理

 

函数-两个明确 

   明确一:这个功能的结果是什么?

           是和(加法运算)是功能的结果,所以该功能的返回类型是int

           其实就是在明确函数的返回值类型.

   明确二:这个功能实现过程中是否需要未知内容参与运算?

         有,加数和被加数,这就是函数的参数列表(参数的个数,参数的类型)

         其实就是在明确参数列表

   注意: 返回值类型和参数类型没有直接关系

 

 

public static void int add(int i,int y){
    int number=i+y;
    return number
}

  

	/*两个参数比较*/
	
	public static boolean equals(int a ,int b){
		return a==b;
	}
	

 

 函数-内存加载过程

  

public class FunctionDemo2 {
	/*
	 * javac:命令是启动java编程器程序 对给定的java程序进行编译和检查
	 * 如果编译没有错误的情况下会生成java运行程序.class文件
	 *"/> javac FunctionDemo2.java--->FunctionDemo2.class
	 *
	 *java:启动虚拟机 运行java应用程序 在运行该java类的时候会去找该类中的main方法参数为(String[] str)方法
	 *"/> java  FunctionDemo2
	 */
	public static void main(String[] args) {
		int x = add(3,5);
		System.out.println("x="+x);
	}
	
	public static int add(int a,int b){
		return a+b;
	}
}

 

  内存 栈的变化先进后出 原理与弹夹类似 



 

 

 函数-重载

重载的概念:

  在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数参数类型不同即可

重载的特点:

  与返回值类型无关,只看参数列表

重载的好处:

  方便与阅读,优化了程序设计.

重载示例:

  //返回两个参数的和

int add(int x,inty ){return x+y}

//返回三个整数的和

int add(int x,int y,int z){return x+y+z}

//返回两个小数的和

double add(double x,double y){return x+y};

 

public class OverLoad {
	

	/*函数的重载
	 * 1.同一个类
	 * 2.同名
	 * 3.参数个数不同 或 参数类型不同
	 * 4.函数重载和返回值类型无关
	 * 5.java是严谨性语言,如果函数出现的调用的不确定性,会编译失败
	 */
	public static void main(String[] args) {
		printCFB(5);
	}
	
	public static int add(int a,int b){
		return a+b;
	}
	public static double add(double a,double b){
		return a+b;
	}
	public static int add(int a,int b,int c){
		return  add(a,b)+c;
	}
	
	/*打印指定的乘法表*/
	public static void printCFB(int num){
		for(int x = 1;x<num;x++){
			for(int y = 1;y<=x;y++){
				System.out.print(y+"*"+x+"="+y*x+"\t");
			}
			System.out.println();
		}
	}
	
	/*打印99乘法表*/
	public static void printCFB(){
		
		/*着块的代码一样所以还可以重载
		 * for(int x = 1;x<num;x++){
			for(int y = 1;y<=x;y++){
				System.out.print(y+"*"+x+"="+y*x+"\t");
			}
			System.out.println();
		}*/
		//重载后写法
		printCFB(9);
	}
}

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值