简单了解Java方法的定义和使用实现详解
这篇文章主要介绍了简单了解Java方法的定义和使用实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.概念
Java语言中的“方法”(Method)在其他语言当中也可能被称为“函数”(Function)。对于一些复杂的代码逻辑,如果希望重复使用这些代码,并且做到“随时任意使用”,那么就可以将这些代码放在一个大括号“{}”当中,并且起一个名字。使用代码的时候,直接找到名字调用即可
2.实战演练
2.1 测试传入参数与返回值方法
代码
MethodDemo.java
package cn.test.logan.day04; import java.util.ArrayList; public class MethodDemo { public int num1; public int num2; // 方法:用来封装一段逻辑 // 定义方法的语法:public 返回值类型 方法名() { //逻辑 } public int getSum() { int sum = num1 + num2; return sum; } // 没有返回值的方法,使用void表示 public void say() { System.out.println("此时是没有返回值的方法,哈哈"); } // 带参数但没有返回值的方法 ,同名方法,但是参数列表不一样,叫方法的重载 public void say(String param) { System.out.println("我的输入参数是:"+param); } // 带多个参数并且没有返回值的方法 public void say(String param1,String param2) { System.out.println("输入的第一个参数是:"+param1); System.out.println("输入的第二一个参数是:"+param2); } // 带参数并且有返回值的方法 public int getDiff(int a,int b) { int diff = a - b; return diff; } // 用来对ArrayList排序 public static void sortForArrayList(ArrayList<Integer> list) { for(int i=0;i<list.size()-1;i++) { for(int j=0;j<list.size()-1-i;j++) { if(list.get(j) > list.get(j+1)) { int tmp = list.get(j); list.set(j, list.get(j+1)); list.set(j+1, tmp); } } } } // 打印ArrayList public void print(ArrayList<Integer> list) { for(int i=0;i<list.size();i++) { System.out.println(list.get(i)); } } }
MethodTest.java
package cn.test.logan.day04; import java.util.ArrayList; public class MethodTest { public static void main(String[] args) { MethodDemo md = new MethodDemo(); md.num1 = 12; md.num2 = 13; int sum = md.getSum(); System.out.println("两个数字的和为:"+sum); System.out.println("----------------------------"); // 调用没有返回值的方法 md.say(); System.out.println("----------------------------"); // 调用带参数, 没有返回值的方法 md.say("参数1"); System.out.println("----------------------------"); // 调用带多个参数, 没有返回值的方法 md.say("参数A","参数B"); System.out.println("----------------------------"); // 调用带参数,有返回值的方法 int diff = md.getDiff(20, 10); System.out.println(diff); System.out.println("----------------------------"); // 定义一个ArrayList,并按从小到达顺序排序后打印 ArrayList<Integer> al = new ArrayList<>(); al.add(20); al.add(10); al.add(40); al.add(15); md.sortForArrayList(al); md.print(al); } }
2.2 测试成员方法和静态方法
成员方法,又称为对象的方法,和对象存在关系,需要使用对象调用。
静态方法,又称为类的方法,和对象不存在关系,可以直接使用类调用。
代码
MethodDemo2.java
public class MethodDemo2 { public String name; // 定义一个类的方法(静态方法) /** * 这样的方法,跟具体对象没关系 * 这样的方法,就可以了定义为类方法-->类的方法 * 静态方法可以直接使用类调用 */ public static void print() { System.out.println("hello"); } // 定义一个(对象的方法)成员方法 public void showName() { System.out.println("hello,"+this.name); } }
MethodTest2.java
package cn.test.logan.day04; public class MethodTest2 { public static void main(String[] args) { // 静态方法调用 MethodDemo2.print(); // 成员方法调用 System.out.println("---------------------------"); MethodDemo2 m2 = new MethodDemo2(); m2.name="Jack"; m2.showName(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
基于spring-mvc.xml和application-context.xml的配置与深入理解
这篇文章主要介绍了spring-mvc.xml和application-context.xml的配置与深入解析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-08-08浅析Spring配置中的classpath:与classpath*:的区别
这篇文章主要介绍了Spring配置中的"classpath:"与"classpath*:"的区别,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-08-08解决SpringBoot中MultipartResolver和ServletFileUpload的冲突问题
这篇文章主要介绍了解决SpringBoot中MultipartResolver和ServletFileUpload的冲突问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-10-10如何为Spring Cloud Gateway加上全局过滤器
这篇文章主要介绍了如何为Spring Cloud Gateway加上全局过滤器,帮助大家更好得理解和学习使用Gateway,感兴趣的朋友可以了解下2021-03-03
最新评论