一篇文章带你入门Java方法详解

目录
  • 案例1
  • 案例2
  • 概念
  • 如何定义方法
  • 方法说明
  • 方法实例
    • 无参无返回值
    • 有参无返回值
    • 无参有返回值
    • 有参有返回值
  • 方法的调用
    • 1.非静态方法
    • 2.静态方法
    • 小AD秀技术
  • 总结

案例1

♀ 小AD:明哥,刚才那个打野过来趁线你为啥不喷!那么友好的态度,被嫂子制裁了?
♂ 明世隐:你啥呀,你没看到人打野头上冒金光啊,还喷!
♀ 小AD:什么冒金光,如来佛祖?
♂ 明世隐:金色打野刀啊,那个刀不趁线的。
♀ 小AD:哦这样啊,难怪我说你不正常。
♂ 明世隐:分析一下来。

分析

打野刀 过程 结果
金色 打野增加经济,线上队友经济未受到影响,全
队经济最大化。
打野被喷
其它 打野增加经济,线上经济被大大消减,增加了
线上队友的怒气,影响队伍的团结。
打野没被喷

案例2

场景1

♂ 明世隐:你特么的有毛病?抓人不会,趁线倒是快,你特么的*********,此处省略1万字。
♀ 坏打野:我操*****,你特么的****,此处省略。。。

场景2

♂ 明世隐:打野我去你家吃饭!
♀ 坏打野:?,什么意思?
♂ 明世隐:打野我请你吃水果!
♀ 坏打野:?,什么意思?

场景3

♂ 明世隐:打野大聪明!
♀ 坏打野:我觉得也是,谢谢!

分析

怎样喷 过程 结果
脏话硬喷 我爽,他不爽 打野反喷
隐蔽喷 我爽,他懵逼 打野没反应
正话反说 我爽,他也爽 打野还感谢我

♀ 小AD:哇,明哥真的是喷出境界来了,我佩服!
♂ 明世隐:一般一般,世界第三。
♀ 小AD:还好我不是打野,按照正常程序,我是不是该说:接下来要学什么?
♂ 明世隐:对啊大聪明。接下来要学习java的方法。
♀ 小AD:别玩这一套,我现在知道你这“大聪明”的意思了。
♂ 明世隐:正式开始吧,从刚才的分析,切入到Java中方法,因为有类似之处。

概念

Java语言中的“方法”(Method,在其他语言当中也可能被称为“函数”(Function),比如JavaScript就用Function表示。对于一些复杂的代码逻辑,如果希望重复使用这些代码,并且做到“随时任意使用”,那么就可以将这些代码放在一个大括号“{}”当中,并且起一个名字。用这段代码的时候,直接找到名字调用即可。

如何定义方法

修饰符 返回值类型 方法名称(参数类型 参数名称){
方法体
return 返回值;
}

方法说明

修饰符:

修饰符最常用的是public

返回值类型

  • void 无返回值。
  • 数据类型(基本类型,引用类型)。

方法名

自定义的名称,命名规则和变量一样。

参数类型

传入的数据是什么类型。

参数名

传入的数据对应的名称。

[ 注意 ]:参数可以有,也可以没有,也可以有多个。

方法体

具体的逻辑代码

返回值

方法最终产生的结果数据,用return 来返回,如果设定的是void无返回值,则此句可以省略不写。

方法实例

无参无返回值

public class LearnMethod {
	//方法1
	public void runMethod1() {
		System.out.println("无参无返回方法执行");
	}
	//主函数
	public static void main(String[] args) {
		new LearnMethod().runMethod1();
	}
}

有参无返回值

public class LearnMethod {
	// 方法1
	public void runMethod1() {
		System.out.println("无参无返回方法执行");
	}
	// 方法2
	public void runMethod2(int a) {
		System.out.println("有参无返回方法执行");
		System.out.println("参数值是:"+a);
	}
	// 主函数
	public static void main(String[] args) {
		//new LearnMethod().runMethod1();
		new LearnMethod().runMethod2(10);
	}
}

【注意】:

方法中定义的int a 这个a叫“形参”

而调用是传入的实际参数(10)叫“实参”

无参有返回值

	// 方法3
	public int runMethod3() {
		System.out.println("无参有返回方法执行");
		return  9;
	}
	// 主方法
	public static void main(String[] args) {
		//new LearnMethod().runMethod1();
		//new LearnMethod().runMethod2(10);
		int b = new LearnMethod().runMethod3();
		System.out.println("调用方法的返回值:"+b);
	}

有参有返回值

	// 方法4
	public int runMethod4(int a) {
		System.out.println("有参有返回方法执行");
		return  a+1;
	}
	// 主方法
	public static void main(String[] args) {
		//new LearnMethod().runMethod1();
		//new LearnMethod().runMethod2(10);
		//int b = new LearnMethod().runMethod3();
		int b = new LearnMethod().runMethod4(10);
		System.out.println("调用方法的返回值:"+b);
	}

♀ 小AD:明哥,你这个方法感觉挺简单的呀。
♂ 明世隐:当然,也不看看谁在教。
♀ 小AD:跟着明哥上分如喝水?
♂ 明世隐:你话题转的太快了,就飘上分那边去了?
♀ 小AD:不是啊,我就是打个比方。
♂ 明世隐:比方是我朋友,你干嘛打他。
♀ 小AD:举例子
♂ 明世隐:例子是我小弟,你举他干嘛,再说你有那么大力气,难道你要学击剑?
♀ 小AD:击你个大头鬼,讲的什么啊,神头鬼脸的。
♂ 明世隐:哎。。。,年轻就是好啊(单纯)。你不是说简单吗?怎么调用?
♀ 小AD:你上面的例子不是写了吗?不就是 new 类名().方法名(实参),当我白痴啊。
♂ 明世隐:还不傻,还有一种调用方式,不用new的,静态方法。

方法的调用

1.非静态方法

格式:new 类名().方法名(实参)

如果有返回值,则: 返回值=new 类名().方法名(实参)

// 主方法
public static void main(String[] args) {
	//new LearnMethod().runMethod1();
	//new LearnMethod().runMethod2(10);
	//int b = new LearnMethod().runMethod3();
	int b = new LearnMethod().runMethod4(10);
	System.out.println("调用方法的返回值:"+b);
}

2.静态方法

格式:类名.方法名(实参)

如果有返回值,则: 返回值=类名.方法名(实参)

//静态方法
public static int runMethod5(int a) {
	System.out.println("静态方法执行");
	return  a+1;
}
// 主方法
public static void main(String[] args) {
	//new LearnMethod().runMethod1();
	//new LearnMethod().runMethod2(10);
	//int b = new LearnMethod().runMethod3();
	//int b = new LearnMethod().runMethod4(10);
	int b = LearnMethod.runMethod5(10);
	System.out.println("调用方法的返回值:"+b);
}

小AD秀技术

public class QiangDaLong {
	// 方法1
	public void qiang1() {
		System.out.println("无参无返回方法执行");
		System.out.println("抢大龙未成功");
	}
	// 方法2
	public void qiang2(String name) {
		System.out.println("有参无返回方法执行");
		System.out.println(name+"抢大龙未成功");
	}
	// 方法3
	public String qiang3() {
		System.out.println("无参有返回方法执行");
		System.out.println("抢大龙成功");
		return  "获得三波主宰先锋";
	}
	// 方法4
	public String qiang4(String name) {
		System.out.println("有参有返回方法执行");
		System.out.println(name+"抢大龙成功");
		return  "获得三波主宰先锋";
	}
	// 主方法
	public static void main(String[] args) {
		new QiangDaLong().qiang1();
		System.out.println("------------------");
		new QiangDaLong().qiang2("小鲁班");
		System.out.println("------------------");
		String res = new QiangDaLong().qiang3();
		System.out.println(res);
		System.out.println("------------------");
		String res1 = new QiangDaLong().qiang4("小鲁班");
		System.out.println(res1);
	}
}

运行结果:

♀ 小AD:哥你看,我掌握的怎么样?既掌握了知识,又抢到了大龙。我真是太秀了。
♂ 明世隐:嗯,你真是个大聪明,掌握的不错,还会灵活应用了。
♀ 小AD:谢谢哥的夸奖,我就知道我是个小天才。
♂ 明世隐:但是有点问题,你赶紧把装备换了
♀ 小AD:我有兵线优势,我换什么装备,我直接推基地。
♂ 明世隐:呵呵,你怕是没抢过大龙吧。
♀ 小AD:哥,头一回,队友都给我打666了。
♂ 明世隐:队友都打666了,你就应该打999了。
♀ 小AD:999?
♂ 明世隐:就是救命救命救命。
♀ 小AD:有那么严重吗?
♂ 明世隐:你试试就知道了,所以你赶紧换装备,复活甲、名刀、不详、魔女斗篷、红莲等等。
♀ 小AD:哥,你太扯蛋了,我懒得换,我才不怕呢。
♂ 明世隐:那我可保不了你,你不知道这帮人。或者我给你改一下,方法里面让打野韩信背锅,看我的。

//方法4
public String qiang4(String name) {
	System.out.println("有参有返回方法执行");
	if("小鲁班".equals(name)){
		name= "韩跳跳";
	}
	System.out.println(name+"抢大龙成功");
	return  "获得三波主宰先锋";
}

♀ 小AD:明哥你太秀了
♂ 明世隐:那必须的,反正大龙到手就行,就让打野挨揍去。
♀ 小AD:哥你太坏了!
♂ 明世隐:这点坏都没有,我能上分?早被捶爆了。
♀ 小AD:哥你们王者玩勾心斗角的吗?我们很直接的,上去就对A,有技能就放。
♂ 明世隐:你问问在座的其他王者吧,看他们说什么?他们比我更坏。累死我了上分咯。
♀ 小AD:G

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • java基础之方法详解

    一.什么是方法 Java方法是语句的集合,他们在一起执行一个功能. 1.方法是解决一类问题的步骤的有序组合 2.方法包含于类或对对象中 3.方法在程序中被创建,在其他地方被应用 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的结合.我们设计方法的时候,最好保持方法的原子性,就是一个方法只完成一个功能,这样利于我们后期的扩展. 当然只读文字不能完全理解,下面的代码一定要自己一个个敲,仔细品味: //类 public class Demo01 { //mian方法,可理解为系统自定义的

  • java设计模式-单例模式实现方法详解

    目录 饿汉式 静态变量 静态代码块 懒汉式 线程不安全 线程安全 双重检查 静态内部类 总结 a 饿汉式 所谓饿汉式,就是直接创建出类的实例化,然后用private私有化,对外只用静态方法暴露. 静态变量 步骤 构造器私有化 类的内部创建对象 向外暴露一个静态的公共方法 优点 缺点 写法简单,在类装载的时完成实例化,避免了线程同步问题 类装载时完成实例化,没有达到LazyLoading的效果,若该实例从未使用,则会造成内存浪费 class Singleton { //私有化构造器 private

  • Java8新特性之接口中的默认方法和静态方法详解

    一.前言 Java 8 引入了默认方法以及可以在接口中定义的静态方法. 默认方法是一个普通的 java 方法,但以 default 关键字开头,静态方法像往常一样用 static 关键字声明. 二.为什么在 Java 接口中使用默认方法? 为什么java在接口中引入了默认方法. 假设一个拖拉机制造公司发布了操作拖拉机的标准接口,如如何挂挡或停车等. 开发者已经开发了不同类型的拖拉机来实现标准的拖拉机接口. 如果公司在其标准接口中增加了新的功能,如如何跳动拖拉机? 开发者需要对他们的类进行修改以定

  • Java程序的逻辑控制和方法详解

    一.顺序结构 从上往下执行,非常简单,不做过多赘述. 二.分支结构 1.if语句 与c语言不同的是,java的if(布尔表达式)必须是布尔表达式 eg:判断某一年是否是闰年 public static void main(String[] args) { Scanner scan = new Scanner(System.in); int year = scan.nextInt(); if((year%4==0 && year%100 !=10)||(year%400==0)) Syste

  • 一篇文章带你入门Java方法详解

    目录 案例1 案例2 概念 如何定义方法 方法说明 方法实例 无参无返回值 有参无返回值 无参有返回值 有参有返回值 方法的调用 1.非静态方法 2.静态方法 小AD秀技术 总结 案例1 ♀ 小AD:明哥,刚才那个打野过来趁线你为啥不喷!那么友好的态度,被嫂子制裁了? ♂ 明世隐:你啥呀,你没看到人打野头上冒金光啊,还喷! ♀ 小AD:什么冒金光,如来佛祖? ♂ 明世隐:金色打野刀啊,那个刀不趁线的. ♀ 小AD:哦这样啊,难怪我说你不正常. ♂ 明世隐:分析一下来. 分析 打野刀 过程 结果

  • 一篇文章带你入门java方法

    目录 方法的使用 什么是方法 方法的语法 基本语法 代码示例 注意事项 方法的调用 调用规则 代码示例 方法的重载 引例 使用重载 重载规则 方法递归 递归定义 代码示例 递归执行过程分析 总结 方法的使用 什么是方法 初次看到方法两字,心里有些疑惑.方法不是指为获得某种东西或达到某种目的而采取的手段与行为方式吗?这是我们日常生活中所说的方法.而在Java中, 方法就是一个代码片段,类似于C语言中的函数. 方法的存在意义: 1.当代码规模比较复杂的时候,能够模块化地组织代码. 2.做到代码被重复

  • 一篇文章带你入门java面向对象

    目录 一.继承 示例: 二.重载 三.接口 1.接口与类相似点: 2.接口与类的区别: 3.语法 四.枚举 1.定义 2.迭代枚举元素 3.在 switch 中使用枚举类 总结 一.继承 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为 本章就以人.学生.老师作为例子.学生和老师都继承人这个对象,都有人的特征和行为,人就是父类,老师和学生就是子类 示例: 人类: package com.zhouzy.base.t7;

  • 一篇文章带你入门Java修饰符

    目录 定义 分类 访问控制修饰符 非访问控制修饰符 修饰符的使用说明 修饰类 修饰方法 访问控制修饰符 非访问控制修饰符 修饰变量 总结 定义 Java修饰符:修饰符用来定义类.方法或者变量,通常放在语句的最前端. 分类 主要分为2类: 访问控制修饰符 非访问控制修饰符 访问控制修饰符 可以使用访问控制符来保护对类.变量.方法和构造方法的访问.分为以下4中权限:private,default,protected,public. 权限说明: 修饰符 当前类 同包 子类(不同包) 不同包(其他类)

  • 一篇文章带你入门Java继承

    目录 Java中继承 什么是继承: 为什么要用继承: 学习总结: 继承关键字:extends 总结 Java中继承 什么是继承: 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为. 为什么要用继承: 可以去掉重复代码,方便后期维护 举个列子,大家应该都玩过英雄联盟,每个英雄都是一个类,如果说不用继承的话每次都要重复定义每个英雄的成员属性,如下图我举了一个MF,一个EZ的列子 public class MissFortu

  • 一篇文章带你入门Java封装

    目录 什么是封装 如何实现封装 代码展示 构造方法 注意点: 代码展示 总结 封装的优点 什么是封装 Java中的封装是将数据(变量)和作用于数据(方法)的代码作为一个单元包装在一起的机制. 在封装中,类的变量将从其他类隐藏,并且只能通过当前类的方法访问. 如何实现封装 可以分为两步: 第一步:将类的变量声明为private. 第二步:提供公共set和get方法来修改和获取变量的值. 代码展示 public class User { private String name; private in

  • 一篇文章带你入门Java运算符

    目录 算数运算符(Arithmetic operator) 关系运算符(Relational operator) 逻辑运算符(Logical operator) 赋值运算符(Assignment Operators) 三元运算符(Ternary operator) 运算符优先级 标识符的命名规则和规范 关键字定义和特点 保留字 总结 运算符时一种特殊的符号,用以表示数据的运算,赋值和比较等. 算数运算符 赋值运算符 关系运算符 逻辑运算符 位运算符 三元运算符 算数运算符(Arithmetic

  • 一篇文章带你入门java泛型

    目录 一.什么是泛型 二.语法 三.示例 1.简单示例 2.返回最大值-支持各种数据类型 3.泛型类 4.类型通配符 总结 一.什么是泛型 Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型. 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数. 二.语法 你可以写一个泛型方法,该方法在调用时可以接收不同类型的参数.根据传递给泛型方法的参数类型,编译器适当地处理每一个方法调用. 下面是定

  • 一篇文章带你入门java多线程

    目录 一.描述 二.一个线程的生命周期 三.线程的优先级 四.创建线程 五.示例 1.Runnable接口 2.继承Thread 3.Callable 和 Future 创建线程 4.测试 总结 一.描述 Java 给多线程编程提供了内置的支持. 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销. 这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分配的内存空间,包含一个

  • 一篇文章带你入门java集合

    目录 一.简介 1.java集合框架图 2.集合框架体系 3.Set和List的区别 二.ArrayList 1.定义 2.用实例了解ArrayList 三.LinkedList 1.语法 2.示例 四.HashSet 1.定义 2.语法 3.示例 五.HashMap 1.定义 2.语法 3.示例 Java HashMap 方法 六.Iterator(迭代器) 1.定义 2.示例 七.List和数组互转 总结 一.简介 1.java集合框架图 从上面的集合框架图可以看到,Java 集合框架主要包

随机推荐