package bjsxt_java0602;public class Test{
public static void main(String[] args ){
Animal a=new Animal();
a.Animal();
}
}
class Animal{

 Animal(){
 System.out.println("我是构造函数");
}

public void Animal(){
System.out.println("我是里面的方法体");
}
}

解决方案 »

  1.   

    在你new对象的时候,已经调用了构造函数,而,对象.方法的时候,是调用Animal类里面的那个方法而已。在这里,你要先明白什么是方法重载,要理解它的定义,方法重载与返回值有关系吗?方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。
      

  2.   

    你这个简单的类里,有好多错误。
    1、java构造函数和方法不是一回事
    2、类中的方法名应该小写。
    3、普通方法和构造函数都可以被重载我优化了下你的代码:
    /*
    *Copyright (c) 2016, gp.inc and/or its affiliates. All rights reserved.
    */
    package com.kata.demo;public class Demo {
    public static void main(String[] args) {
    Animal a = new Animal();
    a.animal(); Animal b = new Animal("teiger");
    b.animal();
    b.animal("elephant");
    }
    }class Animal { Animal() {
    System.out.println("构造函数1");
    } Animal(String name) {
    System.out.println("构造函数2:" + name);
    } public void animal() {
    System.out.println("方法的重载1");
    } public void animal(String name) {
    System.out.println("方法的重载2");
    }
    }
      

  3.   

    方法名是要小写,当我目地是让他和构造函数重名,而且JAVA是区分大小写的