JAVA 和Python对比

JAVA 和Python对比

1 . 数据类型

python

Int,float,complex numbers 都没有定义到底占用多少个字节空间。都是没有取值范围,也没有无符号的情况。

JAVA

JAVA 有基础数据类型,都有确定占多少个字节

2. 全局变量

python

类似c语言,可以定义全局变量,全局的函数。

JAVA

java都要定义类才行。

3.变量声明

python

无需声明类型,直接使用。会造成一个困扰,这个变量到底是新的变量,还是旧的变量复制。不过可以用typing解决这问题,但也不是强制的,给ide看的。

JAVA

都要声明类型。

4.类和继承

python

支持多继承,可以动态的加入属性,因为属性也可以是函数的变量,也就是可以动态的加入方法。
私有属性,也不是真正的私有。保护(protect)类型也没什么用。也没有接口什么的。
如何解决二义性的问题。
Python 多继承与mro_python 多继承 二义性 函数优先级-CSDN博客
在python中提供了__mro__内置属性来查看类的MRO , 广度优先遍历

JAVA

不支持多继承,不支持动态添加属性

5. 体现出动态语言

python

可以动态的执行字符串里边的python语句。eval() exec()。可能是不安全。类似sql注入攻击。

java

无此功能

6. 切片

7. 测试程序

python

unittest是单元测试。doctest 非常方便写在源码里,可以测试,也可以当做example,告诉别人怎么使用。

java

没有doctest

注意的坑

1.默认参数是[]的问题

Python面试题:默认参数问题_python 默认参数空列表-CSDN博客

2. 类属性读方式有两个,写方式自有一个。

class A:name = "aaa"class B(A):def get_name(self):return B.namedef set_name(self):B.name = "bbb"b = B()
print(b.get_name())  # aaa 打印A的name
b.set_name()  # 新增B的类属性name , 是不是很诡异哈哈
print(b.name)  # bbb
print(A.name)  # aaa

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/40551.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于精益转型打造医疗电子运营新模式

为了保持竞争优势并满足日益增长的客户需求,许多企业开始探索精益转型之路,以打造医疗电子运营的新模式。本文,深圳天行健精益管理咨询公司将从精益转型的概念、实施策略以及面临的挑战等方面,深入探讨如何通过精益转型实现医疗电…

面试问题C++

当你将一个无符号整型(unsigned integer)转换为一个有符号整型(signed integer)时,具体的值取决于原始无符号整型的值以及目标有符号整型的大小。 转换规则: 如果无符号整型的值在有符号整型的可表示范围内(即它小于等于INT_MAX),则转换后的值将保持不变。如果无符号…

【数据结构】(C语言):堆(二叉树的应用)

堆: 此处堆为二叉树的应用,不是计算机中用于管理动态内存的堆。形状是完全二叉树。堆分两种:最大堆,最小堆。最大堆:每个节点比子树所有节点的数值都大,根节点为最大值。最小堆:每个节点比子树…

python-opencv多态模板匹配简单代码实现

在我实验过程中发现,这种模板匹配如果不做任何处理只对原有图像进行匹配的话,好像效果很瓜 貌似是模板是1 那就只能检测出正常形态下的1,变大或者是 l 都不一定检测到, 也就是说,只能检测和模板图片大小尺寸颜色类别…

docker 安装 禅道

docker pull hub.zentao.net/app/zentao:20.1.1 sudo docker network create --subnet172.172.172.0/24 zentaonet 使用 8087端口号访问 使用禅道mysql 映射到3307 sudo docker run \ --name zentao2 \ -p 8087:80 \ -p 3307:3306 \ --networkzentaonet \ --ip 172.172.172.…

电脑录制视频的软件,电脑录制,4款免费软件推荐

在数字化时代,电脑录制视频的软件已成为我们日常生活和工作中的得力助手,这些软件可以帮助我们轻松捕获到屏幕上的精彩瞬间。但同时市面上的录制视频软件也层出不穷,让人不知该如何选择。到底怎样才能选择到一款适合自己的录屏软件呢&#xf…

【SpringBoot3学习 | 第2篇】SpringBoot3整合+SpringBoot3项目打包运行

文章目录 一. SpringBoot3 整合 SpringMVC1.1 配置静态资源位置1.2 自定义拦截器(SpringMVC配置) 二. SpringBoot3 整合 Druid 数据源三. SpringBoot3 整合 Mybatis3.1 Mybatis整合3.2 声明式事务整合配置3.3 AOP整合配置 四. SpringBoot3 项目打包和运行…

k8s-第二节-常用操作

k8s命令行常用操作 k8s命令行 操作对象时都要前面声明操作对象类型 kubectl get kubectl describe kubectl delete kubectl edit kubectl logs kubectl exec kubectl port-forward 端口转发将pod 端口映射出来 kubectl cp 本地文件路径:容器文件路径 kubectl apply …

【JS场景题】判断一个元素是否在可视区域内有哪些方法?

方法一、通过元素的位置信息和滚动条滚动的高度来判断 前置知识 clientWidth: 元素的内容区域宽度加上左右内边距宽度。offsetTop: 元素的上外边框至包含元素的上内边框之间的像素距离。document.documentElement.clientHeight: 获取视口高度(不包含滚动…

《Attention Is All You Need》解读

一、简介 “Attention Is All You Need” 是一篇由Ashish Vaswani等人在2017年发表的论文,它在自然语言处理领域引入了一种新的架构——Transformer。这个架构现在被广泛应用于各种任务,如机器翻译、文本摘要、问答系统等。Transformer模型的核心是“自…

小学vr虚拟课堂教学课件开发打造信息化教学典范

在信息技术的浪潮中,VR技术正以其独特的魅力与课堂教学深度融合,引领着教育方式的创新与教学方法的变革。这一变革不仅推动了“以教促学”的传统模式向“自主探索”的新型学习方式转变,更为学生带来了全新的学习体验。 运用信息技术融合VR教学…

深度学习1

1.支持向量机Support Vector Machine(SVM)是一种对数据二分类的线性分类器,目的是寻找一个超平面对样本进行分割,广泛应用人像识别,手写数字识别,生物信息识别。 二维空间分割界是一条直线,在三…

table = collections.defaultdict(list)申请的字典的类型是什么?

当你使用 collections.defaultdict(list) 来申请一个字典时,这个字典的类型是 defaultdict,但是其行为和表现方式在某些方面与普通的字典(dict)相似,主要区别在于它如何处理缺失的键。 defaultdict 是 Python 标准库 …

【基础篇】第4章 Elasticsearch 查询与过滤

在Elasticsearch的世界里,高效地从海量数据中检索出所需信息是其核心价值所在。本章将深入解析查询与过滤的机制,从基础查询到复合查询,再到全文搜索与分析器的定制,为你揭开数据检索的神秘面纱。 4.1 基本查询 4.1.1 Match查询…

Java操作Excel最佳实践

Java操作Excel最佳实践 1、背景描述2、Apache POI简介3、Java读取Excel 1、背景描述 2、Apache POI简介 官网&#xff1a;http://poi.apache.org/index.html 官方文档&#xff1a;https://poi.apache.org/apidocs/index.html 3、Java读取Excel 3.1、导入依赖 <dependency…

Qt——升级系列(Level Seven):事件、文件

目录 Qt事件 事件介绍 事件的处理 按键事件 鼠标事件 定时器 事件分发器 事件过滤器 Qt文件 Qt文件概述 输入输出设备类 文件读写类 文件和目录信息类 Qt事件 事件介绍 事件是应⽤程序内部或者外部产⽣的事情或者动作的统称。在 Qt 中使⽤⼀个对象来表⽰⼀个事件。所有的 Qt …

工商业光伏项目如何快速开发?

一、前期调研与规划 1、屋顶资源评估&#xff1a;详细测量屋顶面积、承重能力及朝向&#xff0c;利用光伏业务管理软件进行日照分析和发电量预测&#xff0c;确保项目可行性。 2、政策与补贴研究&#xff1a;深入了解当地政府对工商业光伏项目的政策支持和补贴情况&#xff0…

Java面试过程中遇到的问题

Java面试过程中遇到的问题 介绍工作经验项目 介绍项目 为什么选用这个技术 报表服务怎么实现的 java框架 1、spring clound特性&#xff0c;组件有那些以及作用 springCloud是一套微服务组件&#xff0c; 常用的Eureka&#xff0c;Ribbon&#xff0c;Hystrix&#xff0c;Fe…

第三方支付平台如何完美契合跨境电商?

在全球化的大潮中&#xff0c;跨境电商"Eurasia Boutique"的创始人艾米丽&#xff0c;带着她的梦想和手工艺品&#xff0c;踏上了进入中国市场的征程。这是一个充满挑战和机遇的旅程&#xff0c;艾米丽和她的企业需要面对和解决一系列复杂的问题。 合规的门槛 艾米…

JVM原理(十四):JVM虚拟机运行时栈帧结构

Java虚拟机已方法作为最基本的执行单位。 栈帧&#xff1a;是支持Java虚拟机进行方法调用和方法执行背后的数据结构。 栈帧存储了方法的 局部变量表、操作数栈、动态连接和放回地址等信息。 每一个方法的调用开始和执行结束&#xff0c;都对应着一个栈帧在虚拟机栈里面从入栈…