Java 提高代码的复用性

版权声明:欢迎交流,转载请注明出处。 https://blog.csdn.net/u013034226/article/details/44571083

编程前需要做的事情:        

案例:对数组操作,获取最大值。

思路:

1,  一组数,要通过比较获取最大的值。

2,  怎么比较?挨个比较,要将数组中的每一个数据都要比较。

3,  比较完,记录下来较大的数据,并用这个较大的数据和下一个数据比较,不断记录较大的值。

4,  如果所有的数据都比较完,那么最后记录的较大值就是最大值。

步骤:

1,  需要一个类。

2,  这个类需要独立运行,必须有main方法。

3,  要有一个数组

4,  每一次较大的数据都有可能不同,需要变量。

5,  用数组的数据都或取出来,为了比较,遍历。

6,  在遍历过程中,需要比较判断。

7,  每满足一次判断条件,就用变量记录较大的值。变量存储。

通过代码实现:

<span style="white-space:pre">	</span>//1,需要一个类
	class ArrayDemo
{
	//2,这个类需要独立运行,必须有main方法。
	public static void main(String[] args)
	{
		//3,有一个数组。
		int[] arr = {25,37,78,55};

		//4,每一次较大的数据都有可能不同。变量。
		int maxValue = arr[0]; //初始化为了数组中的任意一个元素。

		//5,用数组的数据都获取出来,为了比较,遍历。for while
		for(int I =1; i < arr.length; i++)
		{
			//6,在遍历过程中,需要比较,判断。If
			//7,每满足一次判断条件,就用变量记录较大的值。变量存储。
			if(arr[i] > maxValue)
			{
				maxValue = arr[i]; //只要遍历到的元素大于了maxValue中记录的较大的值,就用maxValue将该更大的值记录下来。
			}
<span style="white-space:pre">		</span>}
<span style="white-space:pre">		</span>//8,一旦遍历结束,maxValue中存储的就是该数组的最大值。
<span style="white-space:pre">		</span>//为了显示出最大值,输出语句。
<span style="white-space:pre">		</span>System.out.println(“最大值:”+maxValue);
<span style="white-space:pre">	</span>}
}

案例2:

又来了一个数组,int[] arr2 ={24,56,76,16}。还要获取最大值,复制代码并改变量名?怂!

既然代码不变,为什么不提高代码的重复使用呢?——复用性。

将这部分代码变成一个整体,并给这个整体起个名字(为了便于使用这个整体)Java中代码变成一个整体,是通过函数体现的(所以函数就是一个类中的功能)。

将谁变成一个整体呢?无非是getMaxValue功能,需要自定义功能。

即:

Public static int getMaxValue(int [] arr)
{
	int maxValue = arr[0];
	For(int i =1; i < arr.length; i++)
<span style="white-space:pre">		</span>If(arr[i] > maxValue)
<span style="white-space:pre">	</span>{
		maxValue = arr[i];
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>Return maxValue; //将该值返回,不要打印,因为这个功能不包括这个职责。
}

将操作的取最大值的功能单独封装到一个类中,这样使用这个功能只要找到功能所属的类就可以了。

如:

class ArrayTool
{	//将上面的功能放进来
	Public static int getMaxValue(int [] arr)
<span style="white-space:pre">	</span>{
	Int maxValue = arr[0];
	For(int i =1; i < arr.length; i++)
<span style="white-space:pre">		</span>If(arr[i] > maxValue)
<span style="white-space:pre">		</span>{
		maxValue = arr[i];
<span style="white-space:pre">		</span>}
<span style="white-space:pre">	</span>Return maxValue; 
<span style="white-space:pre">	</span>}
}

//想要使用ArrayTool中的功能。需要先建立ArrayTool这个类中的对象,通过new完成。

ArrayTool tool = new ArrayTool();  //这个就是对象

int maxValue = ArrayTool.getMaxValue(arr);  //通过tool这个对象调用它的获取最大值的功能。

         通过这些天对毕老师视频的学习,了解到复用性在java编程中是无处不在的,是我们最需要学习的;而且在学习复用性的过程中,不知不觉的开始了面向对象的学习。“所有的功能都在对象中,只要找到了对象,就可以使用这些功能,而不需要关注功能的细节”。





猜你喜欢

转载自blog.csdn.net/u013034226/article/details/44571083
今日推荐