上海网站建设服务是什么网络企业网站建设方案
news/
2025/10/5 8:40:30/
文章来源:
上海网站建设服务是什么,网络企业网站建设方案,深圳专业建站公司,ps做网站的效果图#x1f451;专栏内容#xff1a;Java⛪个人主页#xff1a;子夜的星的主页#x1f495;座右铭#xff1a;前路未远#xff0c;步履不停 目录 一、方法的概念1、什么是方法#xff1f;2、方法的定义3、方法调用的过程 二、方法重载1、重载的概念2、方法签名 在日常生活中… 专栏内容Java⛪个人主页子夜的星的主页座右铭前路未远步履不停 目录 一、方法的概念1、什么是方法2、方法的定义3、方法调用的过程 二、方法重载1、重载的概念2、方法签名 在日常生活中如果做饭我们会用到菜刀。如果砍树我们会用到斧头。而菜刀、斧头这种工具都是在做好后可以重复使用的。类似于生活中的工具我们在日常生活中会使用各种各样的工具来完成不同的任务一样在Java中也我们也可以将需要重复使用的操作写成一个方法便于后面重复使用。好了让我们一起揭开方法神秘的面纱。
一、方法的概念
1、什么是方法
方法就是一个代码片段。类似于 C 语言中的 “函数”。方法允许我们将代码进行组织和封装这有助于提高代码的可读性、可重用性和可维护性。方法可以接受参数执行一系列操作并返回一个结果。
方法存在的意义 是能够模块化的组织代码(当代码规模比较复杂的时候) 做到代码被重复使用, 一份代码可以在多个位置使用 让代码更好理解更简单 直接调用现有方法开发, 不必重复造轮子
那我们举个简单的例子我先写一个简单的方法。 public static void roastInOven(String name){System.out.println(烤name);}这个方法是一个烤箱方法他的作用是在你输出的字前面加个烤字。 可以简单的类比为我这个方法就是现实中的烤箱可以把任何东西烤熟。 2、方法的定义 public static void roastInOven(String name){System.out.println(烤name);}我们来拆解一下这个方法。
public这是访问修饰符表示该方法是公共的可以被其他类访问。在Java中public表示该方法对所有类都是可见的。
static这是一个关键字表示该方法是一个静态方法。静态方法属于类而不是对象可以通过类名直接调用而不需要先创建类的实例。在这里roastInOven 是一个静态方法。
void这是方法的返回类型。void表示该方法没有返回值。在这个例子中方法执行后只是打印一条消息而没有产生具体的返回值。
roastInOven这是方法的名称。它是一个标识符用于在程序中引用该方法。
(String name)这是方法的参数列表。在括号中指定了一个参数这里是一个字符串类型的参数命名为 name。方法可以接受输入的数据并在方法体内使用。 System.out.println(烤name); 这是方法体包含这个方法内要执行的语句。
通过这个事例我们可以总结出一个方法是如何定义的了。
修饰符 返回值类型 方法名称(方法参数列表) {方法体,包含实现特定任务的代码
}根据这个我们来模仿着写一个方法。该方法的作用是将输入的两个数相加。 public static int add(int a, int b) {int y a b;return y;
}【注意事项】 修饰符现阶段直接使用public static 固定搭配 返回值类型如果方法有返回值返回值类型必须要与返回的实体类型一致如果没有返回值必须写成void 方法名字采用小驼峰命名 参数列表如果方法没有参数()中什么都不写如果有参数需指定参数类型多个参数之间使用逗号隔开 在java当中方法必须写在类当中 在java当中方法不能嵌套定义 在java当中没有方法声明一说C语言需要进行方法声明
3、方法调用的过程
方法的调用过程为调用方法—传递参数—找到方法地址—执行被调方法的方法体—被调方法结束返回—回到主调方法往下执行 public static int add(int x, int y) {System.out.println(调用方法中 x x y y);return x y;}public static void main(String[] args) {int x 10;int y 20;System.out.println(第一次调用方法之前);int sum add(x, y);System.out.println(第一次调用方法之后);System.out.println(sum sum);System.out.println(第二次调用方法之前);sum add(30, 50);System.out.println(第二次调用方法之后);System.out.println(sum sum);}为什么会这样 因为方法的调用每次都会在栈上开辟内存 栈帧也称为帧或活动记录是在程序执行时存储有关方法调用和本地变量的数据结构。每当调用一个方法时Java 虚拟机都会为该方法创建一个栈帧它会被推入 Java 虚拟机的调用栈。
栈帧的创建和销毁遵循方法调用和返回的过程。当一个方法被调用时一个新的栈帧被创建并推入调用栈的顶部。当方法执行完毕时栈帧被弹出控制流回到调用该方法的地方同时销毁了该栈帧。
二、方法重载
1、重载的概念
方法重载是指在一个类中定义多个同名的方法。在生活中一个词语如果有多重含义那么就说该词语被重载了具体代表什么含义需要结合具体的场景。比如有个人对你说你是一个好人。这个时候好人就有多种意思。一种是你真的是一个好人第二种意思就是别人在委婉的拒绝你。 在Java中如果多个方法的名字相同参数列表不同则称该几种方法被重载了。在Java中一个类中定义了多个同名的方法就会构成重载。前段时间写过一个C里面的函数重载博客看这个费劲的可以看看C 函数重载女友说的话到底是什么意思 public static int add(int x, int y) {return x y;}public static double add(double x, double y) {return x y;}public static double add(double x, double y, double z) {return x y z;}public static void main(String[] args) {System.out.println(add(1, 2)); // 调用add(int, int)System.out.println(add(1.5, 2.5)); // 调用add(double, double)System.out.println(add(1.5, 2.5, 3.5));// 调用add(double, double, double)}【注意】 方法名必须相同 参数列表必须不同(参数的个数不同、参数的类型不同、类型的次序必须不同) 与返回值类型是否相同无关 两个方法如果仅仅只是因为返回值类型不同是不能构成重载的 编译器在编译代码时会对实参类型进行推演根据推演的结果来确定调用哪个方法
2、方法签名 是的在方法中不能定义两个名字一样的变量因为在同一个作用域中不能定义两个相同名称的标识符。那为什么类中就可以定义方法名相同的方法呢
因为编译器在解析方法重载时主要依赖于方法签名的唯一性。方法签名即经过编译器编译修改过之后方法最终的名字。具体方式方法全路径名参数列表返回值类型构成方法完整的名字。
将Java代码经过编译之后可以使用JDK自带的javap反汇编工具查看 反汇编查看之后可以发现两个方法的名字都叫add但是在编译器上的名字其实并不一样。
方法全路径名参数列表返回值类型这才是每一个方法真正的名字。
下面解释一下方法签名中的一些特殊符号说明
特殊字符数据类型VvoidZbooleanBbyteCcharSshortIintJlongFfloatDdouble[数组L引用类型以L开头以;结尾中间是引用类型的全类名
今天就先聊到这里了希望看完这篇文章你能学会方法。我们下次再见
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/928041.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!