A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*
子父类中函数的特点:覆盖(重写)

当子类出现和父类一模一样的函数,当子类对象调用该函数会运行子类函数的内容,如同父类函数被覆盖一样。

当子类继承父类,沿袭了父类的功能到子类中,子类虽具备该功能,但功能的内容却和父类的不一致,这时没有必要定义新功能
而是使用覆盖特性保留父类的功能定义,重写功能内容{即重写方法体}。

注意:1.子类的权限大于或等于父类的权限才能覆盖父类的函数
          2.静态只能覆盖静态,不能覆盖非静态(为什么?)
*/
class Fu
{
        void show()//如果show方法是private修饰的,则不会被子类show方法覆盖,因为私有的不会被其他类发现
        {
                System.out.println("Fu_show");
        }
}
class Zi extends Fu
{
        void show()//子类的权限大于或等于父类的权限才能覆盖父类的函数
        {
                System.out.println("Zi_show");
        }
}
class Test
{
        public static void main(String[] args)
        {
                Zi z=new Zi();
                z.show();
        }
}
//---------------------------------------------------------------------------------------------
//实现电话来电显示功能的更新,升级,功能的扩展
class Tel
{
        void show()
        {
                System.out.println("number");
        }
}

class NewTel extends Tel
{
        void show()//该show方法将重写父类Tel的show方法,实现功能的扩展
        {
                super.show();//因为System.out.println("number");在父类Tel中已经实现了,所以可以用super.show()的格式调用
                System.out.println("name");
                System.out.println("pic");
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马