方法(method),又称为函数(function),是代表一个独立的可复用的功能,体现事务的行为特征,功能特征。
目的/好处:复用性
1、方法的声明格式:
【修饰符】 返回值类型 方法名(【形参列表】){
方法体
}
说明:
(1)【修饰符】
(2)返回值类型:可以是Java的任意数据类型,包括基本数据类型和引用数据类型。
当该方法没有返回值时,使用void表示。
-
如果方法的返回值类型是void,那么在{方法体}中可以不需要return语句。
-
如果方法的返回值类型不是void,那么在{方法体}中必须有return 返回值;的语句,否则编译不通过。
(3)方法名:
-
尽量能够代表方法的功能,即见名知意
-
从第二个单词开始首字母大写
(4)【形参列表】:表示在完成当前方法的功能时,需要“调用者”给我额外的数据。
-
形参列表的格式: (数据类型 形参名, 数据类型 形参名 。。。。)
-
要求方法的“调用者”在调用方法时,【实参列表】的个数、类型、顺序必须与【形参列表】一一对应。
(5)方法体:实现方法的功能,最好一个方法就完成一个独立的功能。
2、方法的调用格式:
//本类同级别方法调用
直接使用
class Circle{
double radius;
double area(){
return 3.14 * radius * raidus;
}
String getInfo(){
return "半径:" + radius + ",面积:" + area();
}
}
//在其他类的方法中调用
对象名.方法名(【实参列表】)
class Circle{
double radius;
double area(){
return 3.14 * radius * raidus;
}
}
class TestCircle{
public static void main(String[] args){
Circle c = new Circle();
System.out.println("半径:" + c.raidus + ",面积:" + c.area());
}
}
-
看方法是否有【形参列表】,【实参的列表】的个数、类型、顺序与【形参列表】一一对应;
-
无论是否有参数,调用时的()不要省略
(2)是否接收返回值
-
看方法是否有返回值,如果是void,表示没有返回值,不能接收;
-
如果不是void,就可以接收,而且接收返回值的变量的类型必须能够兼容这个返回值的类型。
3、方法的声明与调用的代码示例
(1)无参无返回值方法
//本类
class Demo{
void test1(){
//....
}
void test2(){
test1();//直接使用
}
}
//其他类
class Demo1 {
void test1(){
//....
}
}
class Demo2{
void test2(){
Demo1 d = new Demo1();
d.test1();
}
}
(2)无参有返回值方法
//本类
class Circle{
double radius;
double area(){
return 3.14 * radius * raidus;
}
/*
String getInfo(){
return "半径:" + radius + ",面积:" + area();//直接把area()方法的返回值拼接起来。
}*/
String getInfo(){
double a = area();//用a变量接收了返回值
return "半径:" + radius + ",面积:" + a;
}
}
//其他类
class Circle{
double radius;
double area(){
return 3.14 * radius * raidus;
}
}
class TestCircle{
public static void main(String[] args){
Circle c = new Circle();
System.out.println("半径:" + c.raidus + ",面积:" + c.area());
double a = c.area();//用变量a接收返回值
System.out.println("半径:" + c.raidus + ",面积:" + a);
}
}
3)有参无返回值方法
//本类
class Demo{
void test1(String str){
//....
}
void test2(){
test1("hello");
}
}
//其他类
class Demo1{
void test1(String str){
//....
}
}
class Demo2{
void test2(){
Demo1 d = new Demo1();
d.test1("hello");
}
}
(4)有参有返回值方法
//本类
class Demo{
int max(int a, int b){
return a>b?a:b;
}
void test(){
int m = max(3,4);
System.out.println("最大值:" +m);
}
}
//其他类
class Demo1{
int max(int a, int b){
return a>b?a:b;
}
}
class Demo2{
void test2(){
Demo1 d = new Demo1();
int m = d.max(4,5);
System.out.println("最大值:" +m);
}
}
4、方法声明与调用的原则
(1)方法必须先声明后调用
如果调用方法时,如果方法名写错或调用一个不存在的方法,编译会报错
(2)方法声明的位置必须在类中方法外
正确示例:
类{
方法1(){
}
方法2(){
}
}
错误示例:
类{
方法1(){
方法2(){ //错误
}
}
}
(3)方法的调用的位置有要求
类{
方法1(){
调用方法
}
}
错误示例:
类{
方法1(){
}
调用方法 //错误位置
}
(4)方法的调用格式要与方法的声明格式对应
①是否要加“对象.”
②是否要接收返回值
③是否要传参
浙公网安备 33010602011771号