JAVA基础学习 Day018

本文探讨了Java编程中的多态性概念,详细解释了如何在方法中根据对象类型调用适当的getInfo()方法。同时,文章强调了继承成员变量与继承方法的区别,指出子类重写的方法会覆盖父类的同名方法,而实例变量不会被覆盖。最后,文章通过一道笔试题目阐述了在父类引用指向子类对象时,系统执行的是子类重写父类的方法,以及在方法重载中,确定参数个数的方法优先于可变参数个数的方法被调用。
摘要由CSDN通过智能技术生成

1.建立InstanceTest 类,在类中定义方法method(Person e);
        在method中:
        (1)根据e的类型调用相应类的getInfo()方法。
        (2)根据e的类型执行:
        如果e为Person类的对象,输出:
        “a person”;
        如果e为Student类的对象,输出:
        “a student”
        “a person ” 
        如果e为Graduate类的对象,输出: 
        “a graduated student”
        “a student”
        “a person” 

public class InstanceTest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		InstanceTest it = new InstanceTest();
		it.method(new Graduate());
		
	}

	public void method(Person e) {
		if(e instanceof Graduate) {
			System.out.println("a graduatedstudent");
		}
		
		if(e instanceof Student) {
			System.out.println("a student");
		}
		
		if(e instanceof Person) {
			System.out.println("a person");
		}
	}
}

class Person {
	protecte
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值