如果是调用父类的构造方法用super(); 否则用super.方法; 而上面你调用的是父类中的name方法.具体看下面的代码! public class A { void name() { System.out.println("你调用的是父类中的name方法"); } } class B extends A { public static void main(String args[]) { new B().name(); } }
public class A { void name() { System.out.println("你调用的是父类中的name方法"); } } class B extends A { public static void main(String args[]) { super.name(); } }
public class Animal{ String name; public Animal(){}; public void Bite(){ System.out.println("yao"); } public static void main(String [] args){ Animal A = new Animal(); Dog B = new Dog("xiaogou"); Cat C = new Cat("xiaomao"); A.Bite(); B.Bite(); System.out.println(B.getname()); C.Bite(); C.getname(); }} class Dog extends Animal{ public Dog(String name){ this.name = name; } public void Bite(){ System.out.println("gou yao"); } public String getname(){ //System.out.println(this.name); return name; } } class Cat extends Animal{
public Cat(String name){ this.name = name; } public void Bite(){ System.out.println("mao yao"); } public void getname(){ System.out.println(this.name); //return name; } }这是我写的,LZ你试着看看。 看看能不能弄懂一些东西。
class A{
name();
}
class B extends A{
B b=new B();
b.name();
}
调用的是父类的name方法,因为子类只是进行了集成并未重写父类的那么方法
这能通过么????
如果你的子类要调用父类的方法,而子类上并没有覆盖这一方法,你可以直接使用它的函数名来直接调用
如果你的子类要调用父类的方法,而子类上并没有覆盖这一方法,你可以直接使用它的函数名来直接调用
new B().name();
子类如果覆盖这个方法(在子类也定义一个name())的话调用是子类的
在上述条件下想在子类中调用超类的name需要用super
否则用super.方法;
而上面你调用的是父类中的name方法.具体看下面的代码!
public class A
{
void name()
{
System.out.println("你调用的是父类中的name方法");
}
}
class B extends A
{
public static void main(String args[])
{
new B().name();
} }
public class A
{
void name()
{
System.out.println("你调用的是父类中的name方法");
}
}
class B extends A
{
public static void main(String args[])
{
super.name();
} }
String name;
public Animal(){};
public void Bite(){
System.out.println("yao");
}
public static void main(String [] args){
Animal A = new Animal();
Dog B = new Dog("xiaogou");
Cat C = new Cat("xiaomao");
A.Bite();
B.Bite(); System.out.println(B.getname());
C.Bite(); C.getname();
}}
class Dog extends Animal{
public Dog(String name){
this.name = name;
}
public void Bite(){
System.out.println("gou yao");
}
public String getname(){
//System.out.println(this.name);
return name;
}
}
class Cat extends Animal{
public Cat(String name){
this.name = name;
}
public void Bite(){
System.out.println("mao yao");
}
public void getname(){
System.out.println(this.name);
//return name;
}
}这是我写的,LZ你试着看看。
看看能不能弄懂一些东西。
如果重写课,只能通过spuer来显式调用父类的方法。
如果重写了,只能通过spuer来显式调用父类的方法。