从 Python 转 Java 的不习惯之处

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动

出于找工作的目的,我发现市场上 Java 工作职位要更多一些。甚至有些大数据的岗位,不仅要求 Python,也需要掌握 Java。技多不压身,趁年轻多学习。

1 操作习惯

  • 行末必须加分号,Python 里加了也不会报错,但并不强制,Java 的语句不加就会报错,同时 Java 的{}更多一些;
  • if 等循环不能直接跟在 if 后面加 冒号,要把条件判断式用括号圈起来;
  • print 多了一些前缀,Java 要在前面加上System.out.。而且 System.out.println 要更常用一些,可以打印完换行,而System.out.print则是会在同一行进行打印输出;

image.png

  • 如上图,Java要执行一定要有 main 方法,没有的话是不能执行的,而 Python 如果面向对象则更多会用下面这样的结构:
def main():
   print("国庆快乐!")

if __main__ == "__main__":
    main()


2 语法理解

  • 面向对象的概念更加强烈。用 Python 时,会更多地一行一行跑结果出来,再把可以封装成函数的进行封装,再回头来定义类。而Java呢,源代码文件名是User.java,那么代码里一定有class User,代码的所有功能都是用类和对象实现的;
  • 类里面调自己的成员变量,Java 在构造方法里用 this,其他地方不用每个都加,Python 则必须要加上 self
  • 变量类型上,Java 大部分时候都需要先声明一个变量的类型,再去使用这个变量,或者是用 val 来声明一个变量,就可以自动转化为需要的类型;而 Python 则不用过多考虑这些问题,对变量类型的约束较弱;
  • 继承的实现上,Python 通过 子类(父类) 来继承,Java 则通过 extends标识符来继承,而且 Java 体现了更精细、更强大的规范:接口。Java里,抽象类是对类的抽象,而接口是对抽象类的抽象。可以明确的规定,某个接口一定要实现哪些属性和方法,但只用来规范不用来定义。同时,接口的继承用 `implements,可以对多个接口进行继承。

我这里有非常全的Java学习资料,可以私信我,一起学习进步。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值