Java基础(六)-方法函数
2018-03-28 16:05
330 查看
方法/函数
将一段逻辑或者功能提取出来,这种提取的形式就是函数格式
修饰符 返回值类型 函数名(参数列表){方法体;
return 返回值;
}
//明确返回值类型---求两个整数的和,确定结果一定是整数---返回值类型是int
//明确函数执行过程中是否有未知量参与---求两个整数的和,这两个整数在函数执行过程中不能自动产生,是两个未知量,未知量需要以参数的形式体现
//定义参数相当于在声明了几个变量
//在函数中声明的参数---形参---形式参数
//函数名+参数列表---方法签名---add(int i, int j)
public static int add(int i, int j){
int sum = i + j;
return sum;
}
//调用函数的时候传入的实际值---实参---实际参数
add(3,5);
实参(argument): 全称为"实际参数"是在调用时传递给函数的参数. 实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。 形参(parameter):全称为"形式参数" 由于它不是实际存在变量,所以又称虚拟变量。是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数.在调用函数时,实参将赋值给形参。因而,必须注意实参的个数,类型应与形参一一对应,并且实参必须要有确定的值。形式参数:形参是函数被调用时用于接收实参值的变量。注意:
1.如果函数没有返回值,那么返回值类型定义为void
2. return后续的代码不再执行
3. 任何一个实体函数都有return语句
构造方法
在类中与类同名而没有返回值类型的方法---主要是用于创建对象构造方法可以重载
如果一个类没有手动提供构造函数,那么JVM在编译的时候会添加一个无参的构造方法。
构造方法没有返回值类型,也没有返回值,能写return语句吗?---可以---规避风险
重载
一个类中存在了函数名一致,而参数列表不一致的函数的时候,称这多个函数之间构成了重载。函数在调用的时候会最先匹配格式最一致
当进行函数重载的时候,尽量重载所有的情况,以防出现多个函数都匹配的情况
练习:
1.任何一个大于等于6的偶数都可以分解成两个质数的和
14 = 3 + 11
14 = 7 + 7
2. 亲密数:如果A的所有因数(含1,不含本身)之和等于B,且B的所有因数之和(含1不含本身)等于A,A和B是一对亲密数。输出3000以内所有的亲密数
重写
在父子类中存在了方法签名完全一致的方法---产生了方法的重写注意:方法的重写遵循 两等两小一大 这五个要求
1. 方法签名要求完全一致
2. 如果父类中方法的返回值类型是基本类型/void/最终类,子类中重写的方法的返回值类型必须一致
3. 如果父类方法的返回值类型是引用数据类型,那么子类重写的方法的返回值类型是父类方法返回值类型的子类或者是本身class A {}
class B extends A{}
class C{
public A m(){
return null;
}
}
class D extends C {
public B m(){
return null;
}
}4.子类抛出异常小于等于父类方法抛出异常
5. 子类方法的权限修饰符的范围要大于等于父类方法的权限修饰符的范围class A{
protected void m(){}
}
class B extends A{
public void m(){}
}
权限修饰符
用于限定变量或者方法的使用范围的 | 本类中 | 子类中 | 同包类中 | 其他类中 |
public | 可以 | 可以 | 可以 | 可以 |
protected | 可以 | 可以 | 可以 | 不可以 |
默认 | 可以 | 同包子类可以 | 可以 | 不可以 |
private | 可以 | 不可以 | 不可以 | 不可以 |
函数的递归
指在函数中调用自己本身StackOverflowError---栈溢出错误---反应函数在栈中执行---函数在执行完成之前不会释放栈内存---递归的次数太多,就会出现这个错误
注意:基本数据类型传参传的是实际值,对于引用类型而言传参传的是地址
练习:求任意一个数的阶乘
相关文章推荐
- Java基础知识 三 (运算符、键盘录入、函数(方法))
- Java基础之函数(方法)
- JavaScript基础(基本语法:变量、语句、数组、函数、对象、全局方法以及js与java不同,js与html关联)
- java语言基础(17)——方法(类中的函数)的使用及重载
- java学习笔记:Java语法基础2(循环,函数,重载,数组,方法)
- Java基础系列(五)方法、函数
- Java基础之函数(方法)
- java基础中函数(方法)的介绍
- Java基础(6):类和对象概念的理解、Java方法(函数)的使用方式
- 黑马程序员_Java基础_面向对象(继承、子父类变量和函数以及构造函数特点、final关键字、抽象类、模版方法模式、接口)
- java基础——方法(函数)
- I学霸官方免费教程八:Java基础之方法(函数)
- 智渔课堂官方免费教程八:Java基础之方法(函数)
- JAVA中String类的方法(函数)总结--JAVA基础
- JAVA 基础语法(六)——方法(函数)
- 黑马程序员_Java基础[4]_函数\方法
- Java基础-设计一个Java类所需的方法-Java基础-Java-编程开发
- Java语言基础15-有返回值的方法
- Java语言基础12-存取方法(Access method)
- Java语言基础15-有返回值的方法