Java 方法怎么定义
打开手机里的笔记APP,想写一段备忘内容时,你会不会发现,总重复输入“今天要做什么”“需要准备什么”?其实换个方式,把常用的句子先存成“快捷短语”,下次用的时候直接选,就能省不少功夫。编程里的“方法”,就和手机里的快捷短语很像——它是把一段重复用的代码打包起来,需要的时候直接调用,不用反复写。
很多刚接触编程的人,总觉得“定义方法”是件很复杂的事,其实只要搞清楚3个核心部分,就能轻松上手。

先搞懂方法的“基本骨架”
每个方法都有固定的“样子”,就像快递盒,必须有明确的“收件人”(谁能调用这个方法)、“快递内容”(要做的事)、“快递结果”(做完有没有东西给你)。举个生活化的例子:你每天早上要给家人热一杯牛奶,把这个动作打包成一个方法,那:
- 谁能做(修饰符):只要是你家里的人都能做,就写
public(意思是公开的,大家都能调用); - 做完有没有结果(返回值类型):热好的牛奶是最终的东西,就写
牛奶对应的类型,要是做完不用给别人东西,就写void(相当于“没有结果”); - 方法的名字:叫
热牛奶,方便下次找; - 要用到的“材料”(参数):需要一袋牛奶,就写
牛奶 一袋; - 具体做什么(方法体):把牛奶倒进杯子,放进微波炉转30秒,拿出来就完成了。
把这些拼起来,就是方法的基本骨架,写出来就是public void 热牛奶(牛奶 一袋) { 把牛奶倒进杯子; 放进微波炉转30秒; 拿出杯子; },是不是和平时说话的逻辑一样?
分两种最常用的方法,别搞混
日常用的方法,基本分成“做完有结果”和“做完没结果”两种,对应刚才说的返回值类型,举两个具体的例子就懂了:
第一种是“有结果的方法”,比如你想算家里3个人的早餐总花费,每次要算“面包钱+牛奶钱+鸡蛋钱”,就可以把这个计算过程打包成方法:public double 算早餐总花费(double 面包钱, double 牛奶钱, double 鸡蛋钱) { return 面包钱 + 牛奶钱 + 鸡蛋钱; }。这里的double是“数字类型”,相当于告诉程序,这个方法会返回一个小数结果,下次要算的时候,只需要写算早餐总花费(5, 3, 2),程序就会自动算出10,不用再每次手动加一遍。
第二种是“没结果的方法”,比如刚才的热牛奶,你只需要让家人把牛奶热好,不用从热牛奶这个动作里拿“额外的东西”,就用void,比如public void 喊家人吃饭() { 对着客厅喊“吃饭啦”; },这个方法做完就结束了,不会给你返回任何数据,用起来也很简单。
写方法要避开2个小坑
刚学定义方法的人,容易踩两个常见的“小陷阱”,注意就能少出错:
第一个坑是“名字不能乱取”,就像你给孩子起名,不能叫“123”或者“今天吃饭”,方法名要见名知意,比如热牛奶就叫heatMilk(编程里习惯用英文,单词首字母小写,之后的单词首字母大写,叫小驼峰命名法),不能随便写个doSomething,自己和别人看的时候都不知道这个方法是做什么的。
第二个坑是“参数和返回值要对应”,如果方法说要返回一个结果,就必须在方法体里用return给出,比如算总花费的方法,最后必须写return 总和,不然程序会报错;要是用了void,就绝对不能写return 一个数字,不然程序会懵,不知道你到底要做什么。
其实定义方法的核心,就是“把重复的事打包,需要的时候直接用”,就像你把常用的快捷短语存好,下次不用重新打字一样。多试几次,写几个算总价、打招呼的小方法,很快就能熟悉,根本不用怕复杂。