go、rust去掉了继承

为什么go、rust去掉了继承?只要你阅读过很多Java开源系统的源代码就明白。尤其是调试时,一层一层的进入基类,痛苦万分。一个类的功能只看它自己,是不知道有那些功能的,因为它老子、它爷爷的功能都是起作用的。在很多开源系统里,都涉及了很多继承关系,读起来很费劲,尤其是它可能有多个老子,老子也可能有多个爷爷,复杂的关系网很让人崩溃。

但是事情都有两面,继承有继承的好处。例如实体类都需要这5个字段:

//数据创建时间

@Column(name = "create_time")

private String createTime;

//数据创建人

@Column(name = "create_user")

private String createUser;

//数据最后更新时间

@Column(name = "update_time")

private String updateTime;

//数据最后更新人

@Column(name = "update_user")

private String updateUser;

//操作标识 主要用于逻辑删除情况 N U D

@Column(name = "operflag")

private String operflag;

有继承的话可以统一定义基类BaseTable。其他实体类继承BaseTable即可

问题的关键其实在开发人员。知道各个语言的优缺点,能扬长避短即可。其实新语言的诞生一般是基于简化的目的,但随着使用的深入,自己却变的越来越复杂。Java本身是为了简化C++而来,现在却成了被简化的对象。长江后浪推前浪,这是自然规律,编程语言也是如此。

相关推荐
moxiaoran575313 小时前
Go语言中的运算符汇总
golang
夏霞13 小时前
c# ActiveMQ
开发语言·c#·activemq
网络小白不怕黑13 小时前
IPv6核心技术与NDP协议深度解析:从地址架构到邻居发现
开发语言·架构·php
AI科技星13 小时前
伟大的跨越:从超距作用到时空运动——牛顿与张祥前引力场方程的终极对比
开发语言·数据结构·经验分享·线性代数·算法
刘 大 望13 小时前
JVM(Java虚拟机)
java·开发语言·jvm·数据结构·后端·java-ee
苏 凉13 小时前
ONNX Runtime 在 openEuler 上的 CPU 推理性能优化与评测
开发语言·人工智能
CHANG_THE_WORLD13 小时前
Python 推导式详细教程
开发语言·python
民乐团扒谱机14 小时前
【微科普】GN 算法:在网络的脉络中,寻找社群的边界
开发语言·算法·matlab·语言学·语义网络分析
yaoxin52112314 小时前
263. Java 集合 - 遍历 List 时选用哪种方式?ArrayList vs LinkedList
java·开发语言·list
骇客野人14 小时前
java对象和JSON对象之间的转换关系
java·开发语言·json