常见问题1:
Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
解答:
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
常见问题2:
解答:
作用:构造方法用于实例化一个对象。为对象在堆内存中分配内存空间;负责成员变量的初始化。特点:1.方法名称必须和所在类名完全相同。2.无返回值,不能用void声明。 3.通过new调用。4.一个类中可以定义多个构造方法,及方法重载。5..当有指定构造方法时,无论该构造方法是有参,还是无参,系统都不会再自动添加无参的构造方法。构造方法不能被直接调用,必须通过new运算符在创建对象时才会自动调用,一般方法在程序执行到它的时候被调用。且调用构造方法后在堆内存中为对象分配内存空间,为对象成员变量进行初始化,返回对象的地址。
常见问题3:
两个对象值相同(x.equals(y) ==true),但却可有不同的hash code,这句话对不对?
解答:
不对,有相同的hashcode。

