Java基础知识复习之方法的重载
方法的重载是指一个类中可以定义有相同的名字,但参数不同的多个方法。调用时,会根据不同的参数表选择对应的方法。
普通方法的重载
方法调用时,匹配离得最近的类型
不同的涵义:类型,个数,顺序不同
只有返回值不同步构成方法的重载。
构造方法的重载
只有形参的名称不同,步构成方法的重载
与普通方法一样,构造方法也可以重载。
代码示例:
/**
* 类描述:
*
* @author : HMF
* @date:2022/01/27
**/
public class MyMath {
double a;
double b;
//构造方法重载
//无参构造方法
public MyMath(){}
//1个参数构造方法
public MyMath(double a){
this.a =a;
}
//2个参数构造方法
public MyMath(double a,double b){
this.a=a;
this.b=b;
}
//普通方法重载
public int add(int a,int b){
return a+b;
}
//普通方法重载
public double add(double a,double b){
return a+b;
}
//主调用方法
public static void main(String[] args){
MyMath m=new MyMath();
int resultA=m.add(3,5);
double resultB=m.add(3.87,5.98);
System.out.println("3+5="+resultA);
System.out.println("3.87+5.98="+resultB);
}
}
静态成员变量
在类中,用static声明的成员变量为静态成员变量.
1.它为该类的公用变量,属于类,被该类的所有实例共享,在类被载入时被显式初始化,
2.对于该类的所有对象来说,static成员变量只有一份。被该类的所有对象共享!
3.可以使用”对象.类属性”来调用。不过,一般都是用“类名.类属性”。
4.用static声明的方法为静态方法
5.不需要对象,就可以调用(类名.方法名)
在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可访问非static的成员。
可以通过对象引用或类名(不需要实例化)访问静态成员。
this关键字
this关键字
普通方法中,this总是指向调用该方法的对象。
构造方法中,this总是指向正要初始化的对象。
this最常的用法:
1. 让类中的一个方法,访问该类的另一个方法或属性。
2. 使用this关键字调用重载构造方法。避免相同的初始化代码,只能在构造方法中用,并且必须位于构造方法的第一句。
this使用时的注意事项:
·this不能用于static方法!(this指向当前对象,static方法跟对象没有关系)
代码示例:
public class Student {
String name;
int id;
//构造方法
public Student(String name,int id){
this.name = name;
this.id = id;
}
}