Java学习笔记(十二):成员方法

本文介绍了成员方法在编程中的重要性,通过实例展示了如何定义和使用成员方法,如speak、cal01、cal02和getSum,以提高代码的复用性和封装性。成员方法可以简化代码,提高效率,例如在遍历数组时,通过定义一个方法避免重复编写for循环。文章强调了使用成员方法在处理重复任务时的优势,并提供了使用方法代替传统循环的案例。

基本介绍

在某些情况下,我们要需要定义成员方法(简称方法)。比如人类:除了有一些属性外( 年龄,姓名..),我们人类还有一 些行为比如:可以说话、跑步..,通过学习,还可以做算术题。这时就要用成员方法才能完成。现在要求对 Person 类完善。

成员方法的定义

public(访问修饰符) 返回数据类型 方法名形参列表..) {//方法体 语句;
return 返回值;

}

解释:


(1)    形参列表:表示成员方法输入 
eg:person(int n)  , getSum(int num1, int num2)

(2) 返回数据类型:表示成员方法输出, void 表示没有返回值

(3) 方法主体:表示为了实现某一功能代码块

(4) return 语句不是必须的

快速入门案例

(1)    添加 speak  成员方法,输出 “我是一个好人”

public class Method { 

	//编写一个main方法
	public static void main(String[] args) {
		Person p1 = new Person();//创建对象 
		p1.speak(); //调用方法
	}
}

class Person {
	public void speak() {
		System.out.println("我是一个好人");
	}

	
}

 

(2)    添加 cal01 成员方法,可以计算从 1+..+1000 的结果

public class Method { 

	//编写一个main方法
	public static void main(String[] args) {
		Person p1 = new Person();//创建对象
		p1.cal01(); //调用cal01方法
	}
}

class Person {
	public void cal01() {
		int res = 0;
		for(int i = 1; i <= 1000; i++) {
			res += i;
		}
		System.out.println("cal01方法的计算结果=" + res);
	}

	
}

 

(3)    添加 cal02 成员方法,该方法可以接收一个数 n,计算从 1+..+n 的结果

public class Method { 

	//编写一个main方法
	public static void main(String[] args) {
		Person p1 = new Person();//创建对象
		p1.cal02(5); //调用cal02方法,同时给n = 5
		p1.cal02(10); //调用cal02方法,同时给n = 10
	}
}

class Person {
	public void cal02(int n) {
		//循环完成
		int res = 0;
		for(int i = 1; i <= n; i++) {
			res += i;
		}
		System.out.println("cal02方法 计算结果=" + res);
	}

	
}

 

(4)    添加 getSum 成员方法,可以计算两个数的和 

public class Method { 

	//编写一个main方法
	public static void main(String[] args) {
		Person p1 = new Person();//创建对象
		/*把 方法 getSum 返回的值,赋给 变量 returnRes
		然后调用getSum方法,同时num1=10, num2=20
			*/
		int returnRes = p1.getSum(10, 20); 
		System.out.println("getSum方法返回的值=" + returnRes);
	}
}

class Person {
	public int getSum(int num1, int num2) {
		int res = num1 + num2;
		return res;//返回res的值
	}

	
}

 成员方法的好处

(1)    提高代码的复用性

(2)    可以将实现的细节封装起来,然后供其他用户来调用即可

为什么需要成员方法 

参考需求:

请遍历一个数组 ,  输出数组的各个元素值。

解决思路 1:传统的方法,就是使用单个 for 循环,将数组输出。

解决思路 2: 定义一个类 MyTools ,然后写一个成员方法,调用方法实现

public class Method {


//编写一个 main 方法
public static void main(String[] args) {



int [][] map =	{{0,0,1},{1,1,1},{1,1,3}};//遍历数组 , 输出数组的各个元素值


//遍历 map 数组
for(int i = 0; i < map.length; i++) {
    for(int j = 0; j < map[i].length; j++) {
        System.out.print(map[i][j] + "\t");
    }
System.out.println();
    }

}
}

这是传统方法,直接遍历,但如果要求再次遍历 map 数组,是不是还要写for循环?遍历一两次没问题,但如果公司 要求遍历100次,1000次,那岂不是要写100次,1000次的for循环?这样效率太低,还费劲,代码可读性不强,所以我们此刻要使用方法来完成输出:

public class Method {


//编写一个 main 方法
public static void main(String[] args) {



int [][] map =	{{0,0,1},{1,1,1},{1,1,3}};//遍历数组 , 输出数组的各个元素值

MyTools tool = new MyTools();//创建 MyTools 对象

tool.printArr(map);//使用方法 

class MyTools {
    public void printArr(int[][] map) { 
        System.out.println("=======");

for(int i = 0; i < map.length; i++) {//对map数组进行遍历输出
    for(int j = 0; j < map[i].length; j++) { 
        System.out.print(map[i][j] + "_");
}
System.out.println();
}
}
}

在这里使用方法tool.printArr(map);此刻可以省去很大力气去进行for遍历,比传统方法更加高效,省时省力

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

她与剑意皆失

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值