方法的使用及重载的使用

  • 1、方法是什么?

方法是对一个对象指定他可以做什么!
是一段用来完成特定功能的代码片段,类似于其它语言的函数。
例:人是一个对象,人可以吃饭,玩游戏,睡觉等等,吃饭,睡觉,玩游戏就是方法!

  • 2、方法有什么用?

方法用于定义该类或该类的实例的行为特征和功能实现。
可以实现复用性!
面向对象中,整个程序的基本单位是类,方法是从属于类和对象的!

对属性进行安全性的封装
实现步骤
1、对属性进行私有化(private)!
2、对外提供公开的set/get方法!

  • 3、使用方法有什么优点?

提高了安全性
提高了复用性
隐藏了实现细节
减少写代码,需要用的时候直接调用即可!

  • 4、什么时候应该使用方法?
    当能封装成方法使用的时候,最好封装成方法使用,让代码起到复用的作用!

  • 5、方法是怎么使用的?
    方法声明格式:
    有返回值时:
    修饰符1 修饰符2 返回值类型 方法名(形参类型1 形参名1,形参类型2 形参名2…){
    Java语句块;(方法体)
    return 返回值;
    }
    方法的调用:返回值类型 变量名 = 方法名(需传入的实参1,需传入的实参2,…);

无返回值时:
修饰符1 修饰符2 void 方法名(形参类型 形参名){
Java语句块;(方法体)
}
方法的调用:方法名(需要传入的参数);
注: 实参类型必须与形参类型相同才可以传入!
形参与实参可以有也可以没有!
当方法有static静态修饰符时,不需要new一个对象,可直接调用。
当方法无static静态修饰符时,需要new一个方法所在类对象来调用。
实例

package cn.xjion.pro02;
/**
 * 测试方法的使用
 * @author xjion
 *
 */
public class TestMothed {
	public static void main(String[] args) {
//		在main方法中调用静态方法
//		不需要创建所在类的对象,直接调用
		stStady();
		stEnglish(98);
		int sum = stSum();
		System.out.println("值为:"+sum);
		double score = stScore(90);
		System.out.println("成绩为:"+score);
//		在main方法调用普通方法
//		需要通过new创建所在类的对象才能调用
		TestMothed tm = new TestMothed();
		tm.stady();
		tm.english(100);
		int sum1 = tm.sum();
		System.out.println("普通值为:"+sum1);
		double score1 = tm.score(80);
		System.out.println("普通成绩为:"+score1);
	}
	
//	不需要传参的无返回值普通方法
	public void stady() {
		System.out.println("我在学习");
	}
//	需要传参的无返回值普通方法
	public void english(int score) {
		System.out.println("我的英语成绩为:"+score);
	}
//	不需要传参的无返回值静态方法
	public static void stStady() {
		System.out.println("我在学习");
	}
//	需要传参的无返回值静态方法
	public static void stEnglish(int score) {
		System.out.println("我的英语成绩为:"+score);
	}
//	不需要传参的有返回值普通方法
	public int sum() {
		int sum = 0;
		sum = 1 +5;
		return sum;
	}
//	需要传参的有返回值普通方法
	public double score(int score) {
		double sum = 0;
		sum = score * 0.6;
		return sum;
	}
//	不需要传参的有返回值静态方法
	public static int stSum() {
		int sum = 0;
		sum = 10 +5;
		return sum;
	}
//	需要传参的有返回值静态方法
	public static double stScore(int score) {
		double sum = 0;
		sum = score * 0.6;
		return sum;
	}
}

  • 方法重载

什么是重载:
方法的名称相同但是方法的参数列表不同,我们就把它称为重载。

重载的作用:
可以根据不同的参数个数,顺序,类型,自动匹配方法。
减少写过多方法名的重复步骤。

重载的优点:
不用为了对不同的参数类型或参数个数,而写多个方法。多个方法用同一个名字,但参数表,即参数的个数或(和)数据类型可以不同,调用的时候,虽然方法名字相同,但根据参数表可以自动调用对应的方法,就省去了记很多方法名的麻烦!

什么时候应该使用重载:
当有两个及两个以上性质类似或者相同的方法时,我们就可以使用重载来完成,使得传入不同的参数就能够精确的找到需要调用的方法。

怎么使用重载:
构成方法重载的条件(两同三不同):
1.两同:指同一类当中,同一个方法名。
2.三不同的含义:形参类型、形参个数、形参顺序不同
例:

public class TestOverload {
  public static void main(String[] args) {
	System.out.println(add(3,5));
	System.out.println(add(3,5,10));
	System.out.println(add(3.0,5));
	System.out.println(add(3,5.0));
  }
//计算两个整数的和
  public static int add(int n1,int n2){
  	int sum = n1 + n2;
	return sum;
  }
  public static int add(int n1,int n2,int n3){
//  计算三个整数的和,形参个数不同构成重载
	int sum = n1 + n2 + n3;
	return sum;
  }
//形参的顺序不同也能构成重载
  public static double add(double n1,int n2){
	  	double sum = n1 + n2;
		return sum;
	  }
public static double add(int n1,double n2){
	double sum = n1 + n2;
	return sum;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值