【java】成员方法

本文详细介绍了Java中的方法分类,包括有无参数、有无返回值的方法,以及成员方法的调用与返回值处理。还讨论了构造方法的作用、参数的形参与实参概念。此外,重点解析了方法重载的概念,强调了重载的条件与特点,展示了如何在实际代码中实现方法重载。最后,通过Student类的例子展示了方法在类中的应用。
摘要由CSDN通过智能技术生成

一、方法

  1. 分类
    按照有无参数:

     		有参方法
     		无参方法
    

    按照有无返回值

     	无返回值的方法
     	有返回值的方法
    

    结合分类

     	无参数的无参方法
     	无参数的有参方法
     	有参数的无参方法
     	有参数的有参方法
    
  2. 成员方法的返回值
    若方法有返回值,则在方法体中用 return 语句指明要返回的值,其格式如下所示。

return 表达式;
或者
return (表达式);

其中,表达式可以是常量、变量、对象等。表达式的数据类型必须与声明成员方法时给出的返回值类型一致。
3. 形参、实参及成员方法的调用
一般来说,可以通过以下方式来调用成员方法:

methodName({paramList})

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

public int returnMin(int m,int n) {

    // m和n是形参
    return Math.min(m,n);
}
public static void main(String[] args) {
    int x = 50;
    int y = 100;
    Test t = new Test();
    
    // x和y是实参
    int i = t.returnMin(x,y);    
    System.out.println(i);
}
方法主体是方法中执行功能操作的语句。其他各修饰符的含义如下。
publicprivateprotected:表示成员方法的访问权限。
static:表示限定该成员方法为静态方法。
final:表示限定该成员方法不能被重写或重载。
abstract:表示限定该成员方法为抽象方法。抽象方法不提供具体的实现,并且所属类型必须为抽象类
  每创建一个类,系统会自动给这个类添加一个无参构造方法,并且是隐藏的
 * 	构造方法是用来创建对象的
 * 	构造方法的名称与类名相同
 * 	构造方法没有返回值,void也不写
 * 	当在类中自定义了其它有参构造方法后,默认的无参构造方法会被覆盖,如果还需要使用无参构造方法,就需要手动添加一个无参构造方法

二、方法重载

  1. 定义:在同一个类中,多个方法的方法名相同,参数列表不同,这个现象就是方法重载,与方法的返回值和访问权限修饰符无关
  2. 特点:
    同一个类
    方法名相同
    参数列表不同:参数的个数,参数的类型,参数的顺序
    与方法的返回值和访问权限修饰符无关
			sum(int a,int b)
	  		sum(int a,int b,int c)
	 		sum(double a,double b)
	  		sum(int a ,double b)
	 		sum(double a,int b) 
  1. 调用
    通过对象调用重载的方法时,系统的代码智能提示会给出返回类型和参数的信息,使用“↑”和“↓”键或者单击,都可以选择要使用的方法。
    通过对象直接调用并传递参数,系统会根据参数类型自动匹配相应的方法。

  2. 优点
    方法重载是对原有方法的一种升级,可以根据参数的不同,采用不同的实现方法,而且不需要编写多个名称,简化了类调用方法的代码

public class Student {

	String name;
	int age;
	char gender;
	double height;
	double weight;
	String phoneNumber;
	String address;
	String hobby;
	String country;
	String job;
	String email;

	public Student(int age, double height, double weight, String hobby) {
		this.age = age;
		this.height = height;
		this.weight = weight;
		this.hobby = hobby;
	}

	public Student(String name, int age, char gender, double height) {
		this.name = name;
		this.age = age;
		this.gender = gender;
		this.height = height;
	}

	public Student(String name) {
		this.name = name;
	}	
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值