小知识,大挑战!本文正在参与“程序员必备小知识”创作活动
出于找工作的目的,我发现市场上 Java 工作职位要更多一些。甚至有些大数据的岗位,不仅要求 Python,也需要掌握 Java。技多不压身,趁年轻多学习。
1 操作习惯
- 行末必须加分号,Python 里加了也不会报错,但并不强制,Java 的语句不加就会报错,同时 Java 的
{}
更多一些; - if 等循环不能直接跟在 if 后面加 冒号,要把条件判断式用括号圈起来;
- print 多了一些前缀,Java 要在前面加上
System.out.
。而且System.out.println
要更常用一些,可以打印完换行,而System.out.print
则是会在同一行进行打印输出;
- 如上图,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学习资料,可以私信我,一起学习进步。