Java多态性在项目中的应用思路

在学习Java程序设计基础的时候,最开始接触的就是Java的四大基础特性:抽象封装继承还有多态。虽然掌握了这几个特性的使用方法,但是在项目中软件的设计中考虑到使用Java的多态性,还是需要一定的经验去判断。该博客是在实习过程中对代码设计的一些学习想法。

 

Java多态性

多态是同一个行为具有多个不同表现形式或形态的能力。具体来说,多态就是同一个接口,使用不同的实例而执行不同操作。比较常用的做法就是用父类引用指向子类对象,由于子类重写了父类的一些方法,该引用调用这些方法的时候使用的是子类的方法。

例:

class Father {
	private int age = 40;
	public int getAge() {
		return age;
	}
	public void say() {
		System.out.println("I'm father");
	}
}

class Son extends Father{
	private int age = 16;
	@Override
	public void say() {
		System.out.println("I'm son");
	}
	public void play() {}
}

public class Main{
	public static void main(String[] args) {
		Father father = new Son();
		System.out.println(father.getAge());	//输出40
		father.say();	//输出I'm son
		// father.play()	无法完成编译
	}
}

如代码所示,当父类引用指向子类对象时,父类引用的实例变量的值是父类的值,但是调用的方法却是子类重写的方法。基于这个特性,在项目的设计上可以先将每个模块的通用方法都写在一个抽象类AbstractClass里,对应模块下的类继承该抽象类并重写下面相应的代码。当需要对该模块的类进行批量操作的时候,就通过使用AbstractClass引用来指向其所有的子类,通过使用通用方法来做到批量访问。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值