微信小程序> Java学习历程之----进阶篇(三)

Java学习历程之----进阶篇(三)

浏览量:4090 时间: 来源:fengyuxie

    只有永远躺在泥坑里的人,才不会再掉进坑里。——黑格尔


前言

      前面我们说到,类是描述了一组有相同特性(属性)和相同行为(方法)的一组对象的集合,上一周我们学习了如何定义一个类,本周我们学习如何定义类的成员方法。

一、方法的定义

声明成员方法可以定义类的行为,行为表示一个对象能够做的事情或者能够从一个对象取得的信息。类的各种功能操作都是用方法来实现的,属性只不过提供了相应的数据。一个完整的方法通常包括方法名称、方法主体、方法参数和方法返回值类型,其结构如图所示

方法即为对象定义相应的操作,定义的一般格式如下:

<修饰符><返回类型><名字><参数列表><>

其中:

<名字>是方法名,它必须使用合法的标志符。

<返回类型>说明方法返回值的类型。如果方法不返回任何值,则声明为voidjava对待返回值的要求很严格,方法返回值必须与所说明的类型相匹配,如果方法说明有返回值,比如说int,那么方法分支返回时都必须返回一个整数值。

<修饰符>段可以包含几个不同的修饰符,其中限定访问权限的修饰符包括public,protectedprivatepublic访问修饰符表示该方法可以被任何其他代码调用;而private表示方法只能被类中的其它方法调用,在类外不可见;Protected表示该方法是受保护的,只可以被同一包及其子类的实例对象访问。

<参数列表>是传送给方法的参数表,表中各元素间以逗号分隔,每个元素由一个类型和一个标志符组成。

<>表示方法体,是要实际执行的代码段。

一个示例如下:

public class Student {               //创建一个学生类    public StringBuffer printInfo(Student st) {            StringBuffer sb = new StringBuffer();        sb.append("学生姓名:"+st.Name+" 学生年龄:"+st.Age+" 学生性别:"+st.isSex());        return sb;    }}

上述代码创建了一个名称为 printInfo 的方法,其返回值类型为 StringBuffer(引用数据类型)。该方法需要传递一个 Student 类型的参数,最后需要将一个 StringBuffer 类型的数据返回。

二、方法的调用

一般来说,可以通过以下方式来调用成员方法:

methodName({paramList})

关于方法的参数,经常会提到形参与实参,形参是定义方法时参数列表中出现的参数,实参是调用方法时为方法传递的参数。

方法的形参和实参具有以下特点:

1) 形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在方法内部有效,方法调用结束返回主调方法后则不能再使用该形参变量。

2) 实参可以是常量、变量、表达式、方法等,无论实参是何种类型的量,在进行方法调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值、输入等办法使实参获得确定值。

3) 实参和形参在数量、类型和顺序上应严格一致,否则会发生“类型不匹配” 的错误。

4) 方法调用中发生的数据传送是单向的,即只能把实参的值传送绐形参,而不能把形参的值反向地传送给实参。因此在方法调用过程中,形参的值发生改变,而实参中的值不会变化。

三、实战

实参如何将值传递给形参,形参又如何发生改变呢?接下来我们一起来看看吧!

3.1 

package second;public class Test {    public int returnMin(int m,int n) {        return Math.min(m,n);    // m和n是形参,函数返回较小值    }    public static void main(String[] args) {        int x = 69;        int y = 96;             // x和y是实参        Test t = new Test();        int i = t.returnMin(x,y);   //将实参传递给形参        System.out.println(i);    }}

3.2 

package second;public class Class2 {    public int add(int x) {      //形参        x += 30;        System.out.println("形参 x 的值:"+x);        return x;    }    public static void main(String[] args) {        int x = 150;    //实参        System.out.println("调用 add() 方法之前 x 的值:"+x);        Class2 t = new Class2();        int i = t.add(x);   //将实参传递给形参        System.out.println("实参 x 的值:"+x);        System.out.println("调用 add() 方法的返回值:"+i);    }}

小编有话说 

     迟到的圣诞快乐+提前的元旦快乐,祝大家每天都快快乐乐~以后我也不定期和大家分享一些冷门知识吧,显得小编有话说……(Q:为什么电脑从C盘开始?A:计算机诞生之初,数据存储主要靠软盘,软盘驱动器按照顺序占据了AB盘的位置,后来随着硬盘的应用,就出现了C盘以及以后的盘符。)

编辑:玥怡居士|审核:世外居士

往期精彩回顾

Java学习历程之----进阶篇(二)

Java学习历程之----进阶篇(一)

Java学习历程之----基础篇总结(十二

公众号ID:IT进阶之旅

扫码关注最新动态

嗨,你还在看吗?

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

最新资讯

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎