构造方法与方法重载:
1.构造方法:
用来创建对象和初始化属性值.
分为有参构造器和无参构造器.
每一个类都有一个默认的无参构造器,通过"new 类()"来调用从而创建对象。例如:Student stu=new Student();中的Student()就叫做Student类的无参构造器方法。
构造方法没有返回值。方法名必须和类名完全一致。每次使用构造器都会创建一个新的对象。
2.方法重载:
在同一个类中,定义多个同名但参数类型、参数数量或参数顺序不同的方法,叫做方法重载。例如:
 public void study(){
      System.out.println("什么都没学");
}
public void study(int hour){
      System.out.println("不知道在学什么");
}
两者即为方法重载。
方法重载要求:1.方法名必须相同(即上例中的study),2.参数类型、数量及顺序至少有一点不同(上例中,()一个无参,(int hour)一个为整形参)。
在做同一件事情,但面向对象或做的事情的结果不唯一时经常使用方法重载。
代码示例:
    Java代码  

- public class Police{ 
 -        //定义一个Police类 
 -       
 -        public String name; 
 -        public int hp; 
 -       
 -        public Police(String n,int h){ 
 -              name = n; 
 -              hp = h; 
 -        } 
 -        //构造方法为属性赋值 
 -       
 -        public void fight(Boss b){ 
 -              System.out.println(name+"警察对"+b.name+"Boss造成10点伤害"); 
 -              b.hp-=10; 
 -             
 -        } 
 -        public void fight(Thief t){ 
 -              System.out.println(name+"警察对"+t.name+"小贼造成15点伤害"); 
 -              t.hp-=15; 
 -        } 
 -        //方法重载 
 - } 
 - public class Thief{ 
 -        //定义Thief类 
 -        public String name; 
 -        public int hp; 
 -       
 -        public Thief(String n,int h){ 
 -              name=n; 
 -              hp=h; 
 -        } 
 -       
 -        public void fight(Police p){ 
 -              System.out.println(name+"小贼对"+p.name+"警察造成1点伤害"); 
 -              p.hp-=1; 
 -        } 
 - } 
 - public class Boss{ 
 -        //定义Boss类 
 -        public String name; 
 -        public int hp; 
 -       
 -        public Boss(String n,int h){ 
 -              name=n; 
 -              hp=h; 
 -             
 -        } 
 -       
 -        public void fight(Police p){ 
 -              System.out.println(name+"Boss对"+p.name+"警察造成7点伤害"); 
 -              p.hp-=7; 
 -        } 
 - } 
 - public class Manager{ 
 -        //创建管理文件 
 -        public static void main(String[] args){ 
 -             
 -              Police po=new Police("A",100); 
 -              Boss bo=new Boss("B",100); 
 -              Thief th=new Thief("C",100); 
 -             
 -             
 -              java.util.Random r=new java.util.Random(); 
 -              int n=r.nextInt(2); 
 -              //产生随机数,利用随机数使结果不唯一 
 -              if(n==0){ 
 -                   
 -                    while(bo.hp>0){ 
 -                          po.fight(bo); 
 -                          bo.fight(po); 
 -                    } 
 -                    System.out.println("Boss血量为0,警察胜利"); 
 -              } 
 -              else{ 
 -                    while(th.hp>0){ 
 -                          po.fight(th); 
 -                          th.fight(po); 
 -                    } 
 -                    System.out.println("Thief血量为0,警察胜利"); 
 -              }; 
 -        } 
 -       
 - } 
 
运行结果:
A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 A警察对BBoss造成10点伤
 BBoss对A警察造成7点伤害
 Boss血量为0,警察胜利