构造方法和函数重载

构造方法:

格式: 访问权限  类名(){}    //普通方法格式: 访问权限 返回值 方法名(参数){}
代码实例:
public class Student{
    //无参构造方法
    public Student(){
    }
    //有参构造方法,构造时,传入名字参数,初始化name的属性值
    public Student(String name){
    this.name=name; 
    }
    //普通方法定义
    public void study(int hour){
    System.out.println("学习了"+hour+"小时");
    }
}
    每一个类都有一个默认的无参构造方法。使得我们可以通过new 类名()调用而创建对象,同时初始化对象的一些变量。
    构造方法没有任何返回值的定义,但是构造方法是有返回值的,返回的是创建对象的地址。且构造方法必须名字与类名相同,创建对象时调用。
   构造方法可以进行重写,集构造方法重载。其好处是,创建对象是就可以初始化内部的属性值。但如果重新写了一个有参的构造方法,则默认的无参构造方法就不能调用,除非在类中进行显示声明。


方法重载:

在一个类中,可以定义多个同名,但参数不同(参数个数不同或参数类型不同,或参数顺序不同)的方法,叫做方法重载。
代码实例:
public class Student(){
public void  study(){
    System.out.println("学生没有学习!");
}
public void study(Sting name,int hour){
    System.out.println(name+"学习了"+hour+"小时。");
}
public void study(int huor){
    System.out.println("学生学习了"+hour+"小时。");
}
}
public static void main(String[] args){
    String n="Jim";
    int k=3;
   Student st1=new Student();//调用第一个构造方法,无参
   Student st2=new Student(n,k);//调用第二个构造方法,两个参数
    Student st3=new Student(k);//调用第三个构造方法,一个参数
}
调用时,参数与那个方法定义时的参数匹配,就调用哪个方法。
方法的重载体现了面向对象的,做同一件事的不同方法。
但是方法不可以通过改变返回值来重载。




猜你喜欢

转载自yangxing7211.iteye.com/blog/1832891