【java笔记】java多态性的例子

class BaseClass
{
	public int book=6;
	public void base()
	{
		System.out.println("父类的普通方法");
	}

	public void test()
	{
		System.out.println("父类的被覆盖的方法");
	}
}

public class SubClass extends BaseClass
{
	public String book="轻量型J2EE企业级应用实战";  //重新定义了一个BOOK实例属性覆盖父类的BOOK实例属性
	
	public void test()
	{
		System.out.println("子类覆盖父类的方法");
	}

	public void sub()
	{
		System.out.println("子类特有的方法");
	}

	public static void main(String[ ] args)
	{
		BaseClass bc=new BaseClass();
		System.out.println(bc.book);  //输出6
		bc.base();    //两次调用父类的方法
		bc.test();

		SubClass sc=new SubClass();
		System.out.println(sc.book);// 输出轻量型J2EE企业级应用实战
        sc.base();  //子类调用父类的方法,子类继承了父类的方法 
		sc.test();  //执行子类自己的test方法
		
		BaseClass ploymophicBc=new SubClass();    //多态发生
		System.out.println(ploymophicBc.book);  // 输出的是6表明访问的是父类属性
		ploymophicBc.base(); // 输出的是子类中的方法
		ploymophicBc.test();

        //ploymophicBc.sub   如果这样的话会导致编译失败   父类的引用指向子类,父类中没有sub方法
	}



}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值