/*
继承中成员函数的特点:
当子父类中出现了一模一样的方法时,会发生一个函数的特性:覆盖(复写,重写) override
覆盖使用注意事项:
1,子类覆盖父类时,必须要保证覆盖方法的权限要大于等于被覆盖的方法的权限。(private public 和空 default)
2,当覆盖方法有静态修饰时,静态只能覆盖静态,或者被静态覆盖。在写法上注意这个部分
*/
class Fu
{
void show()
{
System.out.println("Fu show Run");
}
}
class Zi extends Fu
{
void show()
{
System.out.println("zi show Run")
return 2;
}
}
class ExtendsDemo3
{
public static void main(String[] args)
{
Zi z = new Zi();
z.show();
}
}
/*
覆盖的应用
覆盖的例子:
描述一个手机,有一个来电显示功能
*/
class Phone
{
void show()
{
System.out.println("number");
}
void call ()
{
}
}
/*
先新电话继承以后电话就可以获取其功能
继承了父类中的功能后,想要对以后的功能进行内容的改变
意味着功能声明不变,将内容在子类中进行自定义,
这种定义就是覆盖。
*/
class NewPhone extends Phone
{
void show()
{
System.out.println("name");
super.show();
}
}
/*
class NewPhone
{
void show()
{
System.out.println("name");
System.out.println("number")
}
}*/
class ExtendsDemo3
{
public static void main(String[] args)
{
Zi z = new Phone();
z.show();
}
}