美文网首页技术干货
【麦兜】Java基础知识巩固——面向对象(方法详解和重载)

【麦兜】Java基础知识巩固——面向对象(方法详解和重载)

作者: 风骚的麦兜 | 来源:发表于2017-05-26 17:12 被阅读0次

    方法是类或对象的行为特殊的抽象,方法是类或对象最重要的组成部分

    如果需要定义一个方法,只能在类里定义,不能独立定义一个方法,所有的方法都必须使用“类.方法”或“对象.方法”来调用

    所以方法可以总结一下三点:

    ①方法不能独立定义,方法只能在类里定义

    ②方法要么属于该类本身,要么属于该类的一个对象

    ③方法不能独立执行,方法必须类或者对象作为调用者

    举个栗子:

    定义方法

    可以看到,上面的代码报错了,因为我们在类外定义方法,而下面我们在类里定义方法,代码就不会报错。


    Java方法的参数传递方法只有一种,那就是值传递

    值传递就是将实际参数的副本,也就是复制品传入方法内,参数本身是不受影响的

    举个栗子:

    值传递例子 值传递例子结果

    到这里我们可以看到,主方法中的a和b将值传入swap方法中,swap方法将a和b的值修改了,但是主方法内的a和b的值并没有改变。


    使用static修饰的方法属于该类本身,既可以使用类来调用,也可以使用对象来调用,由于static修饰的方法还是属于这个类,所以用该类的任何对象调用这个方法会得到相同的结果;

    不使用static修饰的方法属于该类对象,只能使用对象来调用,使用不同的对象可能得到不同的结果。


    这里,我们还涉及到一个问题,如果方法名相同怎么办?毫无疑问,如果是完全相同的两段代码的话,程序就会报错

    例如:

    相同方法名报错

    这时候就说到我们的重载问题了。


    重载(方法重载和构造器重载)

    同一个类里面有多个方法或者构造器,多个方法或者构造器的形参列表不同的话,在同一个类里是不会报错的,这样编写多个相同名称的方法或者构造器,就被称作重载。

    举个栗子:

    重载

    可以看见,虽然我们设置了多个构造器和多个方法,但是我们的形参是不一样的,所以程序不会报错。


    如果有帮助请记得收藏,如果有错误请帮忙指出来!

    相关文章

      网友评论

        本文标题:【麦兜】Java基础知识巩固——面向对象(方法详解和重载)

        本文链接:https://www.haomeiwen.com/subject/ylsxfxtx.html