子类既可以重载父类的方法也可以覆盖父类的方法吗?求高手!急...
展开全部
给你个例子看一下吧
class SuperClass{
public void method(int x, double y){
System.out.println("我是父类SuperClass");
}
}
class SubClass1 extends SuperClass{
public void method(int x, double y){
System.out.println("我重定义了父类SuperClass,即覆盖了父类方法");
}
}
class SubClass2 extends SuperClass{
public void method(int x){
System.out.println("我重载了父类SuperClass,没有覆盖父类方法");
}
}
class SuperClass{
public void method(int x, double y){
System.out.println("我是父类SuperClass");
}
}
class SubClass1 extends SuperClass{
public void method(int x, double y){
System.out.println("我重定义了父类SuperClass,即覆盖了父类方法");
}
}
class SubClass2 extends SuperClass{
public void method(int x){
System.out.println("我重载了父类SuperClass,没有覆盖父类方法");
}
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
重载是在同一个类内的,覆盖是子类相对于父类的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
当然可以 除了FINAL的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是可以的
例如:
class P
{
public void hello() {}
}
class C extends P
{
public void hello(String s) {}
}
子类hello重载(overload)了父类的hello方法。
且官方文档也有:
the Java Language Specification for Java 7 states:
If two methods of a class (whether both declared in the same class, or
both inherited by a class, or one declared and one inherited) have the
same name but signatures that are not override-equivalent, then the
method name is said to be overloaded.
http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls-8.4.9
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询