Java方法详解

Java方法详解

方法的声明

​ 先举例一个最熟悉的方法:

public static void main(String[] args){
    System.out.println("Hello World!");
}

​ 可以看到,main方法由这几部分构成:

​ **权限修饰符:**权限修饰符包括四种,private、缺省、protected、public。

​ **关键词static:**即静态的,之后进行具体分析。

​ **返回值类型:**有两种情况,无返回值的void和有返回值的情况。

​ **方法名:**属于标识符,命名时需要见名知意,且遵守命名格式:首字母小写,如果由多个单词组成,其余单词的首字母大写。

​ **形参列表:**注意属性与局部变量的区别。

​ 下面具体展开需要注意的点。

权限修饰符

​ 四个权限修饰符private、缺省、protected、public,他们的权限由小到大。

​ **private:**类的内部能够调用

​ **缺省:**同一个包内能够调用

​ **protected:**不同包的子类能够调用

​ **public:**同一个工程内能够调用

属性与局部变量

​ 这里重点比较属性与局部变量的不同点:

1、声明的位置不同

​ 属性定义在类的内部。

​ 局部变量声明于方法、方法形参、代码块、构造器形参以及构造器内部。

2、初始化

​ 属性根据其类型具有初始化值:整形的初始化值为0、浮点型的初始化值为0.0、char类型的初始化值为0、布尔类型的初始化值为false、引用数据类型(如:对象、数组)的初始化值为null。

​ 局部变量不具有初始化值。

3、内存加载位置不同

​ 属性(非static)加载于堆中,静态属性加载于方法区中。

​ 局部变量加载于虚拟机栈中。

可变形参

​ 可变形参与数组类似,下面使用代码举例:

class Party{
    public void party(int bears, String ... people){
        System.out.print("我们在开派对,这里有" + bears + "瓶酒。");
        for (String person : people){
            System.out.print(person + " ");
        }
        System.out.println("都来了");
    }
}

​ 我们创建了一个Party类,其中的party方法有两个参数,一个bear和可变形参people。可变形参与数组类似,但必须声明在形参列表的末尾,且只能由一个。

​ 在主函数中调用:

public static void main(String[] args) {
    Party p = new Party();
    p.party(100, "李雷", "韩梅梅", "牛牛");
}

​ 输出结果为:我们在开派对,这里有100瓶酒。李雷 韩梅梅 牛牛 都来了

方法的重载

​ 在一个类中,允许存在一个以上的同名方法,只要他们的形参列表不同即可。像这种同名方法便称为方法的重载,下面举例说明。

class Party{
    public void party(){
        System.out.println("我在家自嗨");
    }
    public void party(String friend){
        System.out.println("我和" + friend + "在开party");
    }
}

​ 我们在Party类中定义了两个重载的方法,他们方法名相同,但参数列表不同(形参列表不同包括形参列表的顺序和数据类型以及形参个数的不同),并没有报错。下面我们分别调用他们运行运行试试。

public class Test {
    public static void main(String[] args) {
        Party p = new Party();
        p.party();//输出:我在家自嗨
        p.party("牛牛");//输出:我和牛牛在开party
    }
}

​ 关于方法,不仅有方法的重载,还有方法的重写。关于方法的重写之后进行说明。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值