java的静态方法、有参、无参,方法的重载

一、方法

静态方法

​ 概念:特定功能的代码块
​ 好处:减少了代码的冗余
​ 方法的分类:静态方法、成员方法、构造方法
​ 注意:
​ 1.方法编写的位置:类里
​ 2.方法与方法之间是平级关系(不能在一个方法中声明另一个方法)
​ 3.方法不被调用,永远就是个摆设

​ 方法的语法结构分类:

1.无返回值无参数的方法

​ 语法结构:

​ 访问修饰符 static void 方法名(){
​ …代码块…
​ }

​ 需求1:编写方法(printStar),打印三角形

public class test1{
	public static void main(String[] args){
		printStart();
	}
	public static void printStart(){
		for(int i=0;i<5;i++){
			for(int j =0;j<=i;j++){
				System.out.print("*");
			}
			System.out.println();
		}
	}
}

2.有参数的方法

​ 语法结构:
​ 访问修饰符 static void 方法名(参数类型 变量名){
​ …代码块…
​ }
​ 注意:
​ 1.形参:形式参数,方法声明时,规定调用时要传入的数据类型及接收数据的变量
​ 2.实参:实际参数,调用方法时传入的具体数据
​ 3.实参与形参类型必须兼容
​ 4.多个参数用逗号分隔

​ 需求1:编写方法(printStar),打印三角形,打印行数及内容由调用方指定

public class test1{
	public static void main(String[] args){
		printStart(5,"#");
	}
	public static void printStart(int sum,String str){
		for(int i=0;i<sum;i++){
			for(int j =0;j<=i;j++){
				System.out.print(str);
			}
			System.out.println();
		}
	}
}

3.有返回值的方法

语法结构:
public static 返回值类型 方法名([参数]){
…代码块…
return 返回数据;
}

​ 注意:
​ 1.方法功能单一性
​ 2.return下面不能接执行语句,因为return表示结束当前方法
​ 3.声明方法时规定返回值类型
​ 4.return后面接的是要返回的具体数据
​ 5.声明方法时规定的返回值类型必修和return后的数据类型兼容
​ 6.方法A中有a和b的变量,方法B中也a和b的变量,这几个变量不互相冲突,因为方法中的变量叫做局部变量,作用域在该方法内

​ 总结 - 方法的使用:
​ 不需要外界传入参数和不需要返回给外界数据,就使用无参数无返回值的方法
​ 需要外界传入参数,就使用带参数的方法
​ 需要返回给外界数据,就使用带返回值的方法
​ 经验:声明一个方法
​ 1.考虑方法名
​ 2.考虑是否需要参数(传入数据)
​ 3.考虑是否需要返回数据(向外界传出数据)

public class Test03{
	/**
		
				需求1:编写方法(add),传入两个int值,求和
				需求2:编写方法(getMax),传入两个int值,比较最大值
			
	*/
	public static void main(String[] args){
		
		int sum = add(10,20);
		sum = add(sum,30);
		System.out.println(sum);//60
		
		int result = getMax(666,888);
		System.out.println(result);
	}
	
	public static int getMax(int a,int b){
		int max = (a>b)?a:b;
		return max;
	}
	
	
	//方法声明时规定返回值类型
	public static int add(int a,int b){
		int result = a+b;
		return result;//返回具体参数
	}

}

2、方法的重载

知识点:方法的重载

​ 含义:方法与方法之间的关系
​ 好处:系统会根据实参类型自动匹配到对应方法
​ 条件:
​ 1.在同一个类里
​ 2.方法名一致
​ 3.参数列表的个数或者类型不一致
​ 4.与返回值无关
​ 应用场景:
​ 在同一个类里,有多个方法功能一致,细节实现不一样,就可以考虑使用重载

public class Test04{
	/**
		
		需求:编写一个方法,求两个int最大值
		需求:编写一个方法,求三个int最大值
		需求:编写一个方法,求四个int最大值

	*/
	public static void main(String[] args){
		
		
		System.out.println(getMax(10,20,30,40));
	}
	
	public static int getMax(int a,int b){
		return (a>b)?a:b;
	}
	
	public static int getMax(int a,int b,int c){
		int max = getMax(a,b);
		max = getMax(max,c);
		return max;
	}
	
	public static int getMax(int a,int b,int c,int d){
		int max = getMax(a,b);
		max = getMax(max,c);
		max = getMax(max,d);
		return max;
	}

	
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值