当前位置: 首页 > news >正文

网站快速备案价格做宣传的网站

网站快速备案价格,做宣传的网站,logo设计文案范例,设计图片背景文章目录 什么是方法?方法定义实参和形参的关系没有返回值的方法 方法重载方法签名 什么是方法? 在编程中某段功能的代码可能频繁使用到,如果在每个位置都重新实现一遍,会有一些缺点,比如: 使程序变得繁琐…

文章目录

  • 什么是方法?
  • 方法定义
    • 实参和形参的关系
    • 没有返回值的方法
  • 方法重载
  • 方法签名

什么是方法?

在编程中某段功能的代码可能频繁使用到,如果在每个位置都重新实现一遍,会有一些缺点,比如:

  1. 使程序变得繁琐
  2. 开发效率低下,做了大量重复性的工作
  3. 不利于维护,需要改动时,所有用到该段代码的位置都需要修改
  4. 不利于复用

因此,在编程中我们也可以将频繁使用的代码封装成“方法”(方法就是一个代码片段. 类似于 C 语言中的 “函数”),需要时直接拿来使用即可,避免了一遍一遍的累赘。

方法定义

方法语法格式

修饰符 返回值类型 方法名称(参数类型 参数…){
方法体代码
【return 返回值】
}

//示例:public int func(int num){System.out.println(num);return num;}

注:

  1. 修饰符:比如public、private等。有多种类型,不同类型有不同意义(后续介绍)
  2. 返回值类型:如果方法有返回值,返回值类型必须要与返回的实体类型一致;如果没有返回值,则必须写成void
  3. 方法名称:小驼峰命名
  4. 参数列表:如果没有参数()内则不需要写;如果有参数,需要指定参数类型,多个参数之间用,隔开
  5. 方法体:写方法内部要执行的语句
  6. 特别说明:在Java中,方法必须写在类中;方法不能嵌套定义;没有方法声明的说法

实参和形参的关系

在Java中,实参的值永远都是拷贝到形参中(形参是实参的临时拷贝),形参和实参本质是两个实体

    //用形参x、y来接收实参传递的10、20public static int add(int x,int y){return x+y;}public static void main(String[] args) {int ret = add(10,20);}

但是这样的写法会有一些问题,比如:

	//交换a和b的值public static void swap(int x,int y){int tmp = x;x = y;y = tmp;}public static void main(String[] args) {int a = 10;int b = 20;System.out.println(a);   //10System.out.println(b);   //20swap(a,b);     //交换a和b的值System.out.println(a);   //10System.out.println(b);   //20}

我们明明已经将a和b的值交换了,为什么打印初来的结果还是没有交换呢?
原因:
就像上面说的,实参a和形参x是完全不同的俩个实体,实参b和形参y也是俩个完全不同的实体。他们仅仅只是因为拷贝的原因值相同而已,再没有什么关系。在调用swap方法时,交换的是x和y的值。对main函数中的a和b没有影响。

解决
对于基础类型来说,形参是实参的临时拷贝,即”传值调用“。
我们需要的是“传址调用”,但Java中没有指针的概念,所以我们需要用到引用类型,通过传递引用类型的参数来解决问题。

	public static void swap(int[] arr){int tmp = arr[0];arr[0] = arr[1];arr[1] = tmp;}public static void main(String[] args) {int[] arr = {10,20};System.out.println(arr.toString());  //打印原数组内容swap(arr);System.out.println(arr.toString());  //打印交换后的数组内容}

没有返回值的方法

方法的返回值是可选的。有时可能没有,在没有返回值的时候就需要把返回值类型写为void

	// 只需要打印a的值  不需要用到返回值public static void print(int x){System.out.println(x);}public static void main(String[] args) {int a = 10;print(a);}

方法重载

对于同一个方法,我们根据不同的场景可能需要使用不同的参数列表,按照以往的知识,我们需要创建不同的方法来满足不同需求,这就意味着我们需要起不同的方法名,而取名字本来就是让人头疼的事情。那能否将所有的方法都使用一个方法命呢? 当然可以,这就是方法的重载。

	//实现加法public static void add(int x){System.out.println(x);}public static void add(int x,int y){System.out.println("x |" + "y");}public static void add(double x,double y){System.out.println("x | " + "y");}

注:

  1. 方法名必须相同
  2. 参数列表必须不同(即参数的个数不同、参数的类型不同、参数的次序不同)
  3. 与返回值类型是否相同无关
  4. 在方法调用时,编译器会对实参类型进行判断,根据判断的结果来确定调用哪个方法

方法签名

在同一个作用域中不能定义两个相同名称的标识符。比如:在一个方法中不能定义两个名字一样的变量。那为什么类中就可以定义方法名相同的方法(方法重载)呢? 这就是方法签名的缘故!

方法签名:即方法经过编译器编译修改之后最终的名字(具有唯一性),他与我们最开始对他的命名不同。而系统使用的方法名是方法签名,不是我们的命名。所以可以起相同名称的方法名。

方法签名的具体形成方式:方法全路径名+参数列表+返回值类型

http://www.yayakq.cn/news/588394/

相关文章:

  • 门户网站制作平台惠州公众号开发公司
  • 网站设计的原则网站建设公司方案
  • 汕头网站开发定制做视频的素材什么网站好
  • 网站流程网站开发人员 把网站注销
  • 赤峰城乡建设局网站学网站建设要多久
  • 玛纳斯县住房和城乡建设局网站wordpress4.4.1
  • 企业免费网站注册开发一个app的资质要求
  • 开通网站后曹县建设厅网站
  • 学校网站开发说明书文档网页设计培训教育机构
  • 网站建设365南宁微信网站建设
  • 兼职做网站编辑网站静态页面模板
  • 网站改版升级方案自己做壁纸的网站
  • 文昌湖城乡建设局网站网站设计 扁平化
  • 网钛cms做的网站巴中网站开发
  • dede网站首页免费cms建站系统
  • 宁波网站公司网店推广有哪些方法
  • 济南专业网站建设咨询wordpress标签论坛
  • 好搭建网站建设品牌网站建设方
  • 极简个人网站模板网站运营与管理的含义
  • 新乡网站建设制作公司淮安网站建设多少钱
  • 辽宁网站设计seo网站推广优化
  • 网站建设与应用 教案赌钱网站怎么做的
  • 仿照别人的网站做违法吗涡阳网站建设哪家好
  • 做网站工资高么一个网站多少钱?
  • 长春代做网站汕头如何建设网站设计
  • 中大型企业网络组网案例官网优化 报价
  • 网站图片设置链接公司网站建设的系统功能需求
  • 在家做网站或ps挣钱接活爱站网seo综合查询工具
  • 做网站设计的公司有哪些搜索引擎网站录入
  • 网站收录是什么意思wordpress 在线购物