如何设计java_如何设计Java框架? –一个简单的例子

通过优锐课核心java学习笔记中,我们可以看到,码了很多专业的相关知识, 分享给大家参考学习。

你可能对框架如何工作感到好奇? 这里将通过一个简单的框架示例来说明框架的思想。

框架目标

首先,为什么我们需要一个除普通库以外的框架? 框架的目标是定义一个过程,使开发人员可以根据个人需求实现某些功能。 换句话说,框架定义了框架,开发人员在使用框架时填充了框架。

最简单的框架

在下面的示例中,前3个类被定义为框架的一部分,第4个类是框架的客户端代码。

Main.java是框架的入口点。 这是无法更改的。

//imagine this is the entry point for a framework, it can not be changedpublic class Main {

public static void main(String[] args) {

Human h = new Human(new Walk());

h.doMove();

}}

Move.java是挂钩。 挂钩是开发人员可以根据自己的需求定义/扩展功能的地方。

public abstract class Move {

public abstract void action();}

Human.java是模板,它反映了框架的工作原理。

public class Human {

private Move move;

public Human(Move m){

this.move = m;

}

public void doMove(){

this.move.action();

}}

这个简单的框架允许并要求开发人员扩展“ Move”类。 实际上,在这个简单的框架中,action()方法是开发人员唯一能够更改的东西。

在实现内部,可以将不同的“动作”编程为不同的目的。 例如。 下面的示例显示“每小时5英里”,你当然可以将其重新定义为“每小时50英里”。

public class Walk extends Move {

@Override

public void action() {

// TODO Auto-generated method stub

System.out.println("5 miles per hour - it is slow!");

}}

结论

此处的示例仅显示了一个简单的Template and Hook的工作方式。 真正的框架要比这复杂得多。 它不仅包含模板-模板关系之类的其他关系,而且还包含有关如何有效提高性能和编程可用性的非常复杂的过程。

> 喜欢这篇文章的可以点个赞,欢迎大家留言评论,记得关注我,每天持续更新技术干货、职场趣事、海量面试资料等等

> 如果你对java技术很感兴趣也可以交流学习,共同学习进步。

> 不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代

文章写道这里,欢迎完善交流。最后奉上近期整理出来的一套完整的java架构思维导图,分享给大家对照知识点参考学习。有更多JVM、Mysql、Tomcat、Spring Boot、Spring Cloud、Zookeeper、Kafka、RabbitMQ、RockerMQ、Redis、ELK、Git等Java干货

1d6c8c4c544511b2e626ff1653dca02f.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值