Java中构造的重载

Java允许重载任何方法:

package com.company;
import java.util.*;


public class Main {

    public static void main(String[] args) {
   // write your code here
        Employee[] staff=new Employee[3];

        staff[0]=new Employee("Harry",4000);
        staff[1]=new Employee(6000);
        staff[2]=new Employee();

        for (Employee e:staff) {
            System.out.println("name="+e.getName()+",id="+e.getId()+",salary"+e.getSalary());
        }
    }
}

class Employee{
    private static int nextId;

    private int id;
    private String name="";
    private double salary;

    static{
        Random generator=new Random();
        nextId=generator.nextInt(10000);
        }

        {
            id=nextId;
            nextId++;
        }

    public Employee(String n,double s){
        name=n;
        salary=s;
    }

    public Employee(double s){
        this("Employee#"+nextId,s);
    }

    public Employee(){}

    public String getName(){
        return name;
    }

    public double getSalary(){
        return salary;
    }

    public int getId(){
        return id;
    }
        }
 
 

演示结果:

name=Harry,id=2625,salary4000.0
name=Employee#2626,id=2626,salary6000.0
name=,id=2627,salary0.0


猜你喜欢

转载自blog.csdn.net/billy1900/article/details/80527095