package Class;
class Object {
public int test(){
return 1234;
}
}
public class A extends Object{
public int test(){
return 456;
}
public static void main(String []args)[color=orange]throws Exception{
A a = new A();
a.test();
System.out.println(a.test());
}
}
注意:
[size=x-small]1. 第一个类是class类 在java中 一个类只能有一个公开类
2. 第二个类不在Obejct类里面
3.区分重载和重写
首先知道java中有关方法定义的所有属性:
方法定义包括 方法名、参数列表、返回值、修饰标识等
☆其中方法名以及参数列表用来确定类中的一个方法;(即:同名的不同参数列表的方法不是同一个方法)。因此重载就是写一个完全不同的方法(只有方法名相同)。
☆一个类中同一个方法的修饰标识是确定的,返回值也是,否则会造成类外部的访问混乱;
☆一般情况下子类在继承父类的时候也将父类的方法同时继承下来,如果此时在子类中写了一个父类中已经有的方法(即:方法名以及参数列表都相同),就会屏蔽掉父类中的相应方法(有一个前提:修饰符的范围不能缩小,缩小时会造成类外部的访问混乱),这个过程就是重写。
总结:重载是“词不达意”的:分明是两个方法硬要扯上关系;重写就是覆盖父类方法的意思。[/size]