• Java--简介


    一、Java介绍

    1.Java背景:Java是Sun Microsystems公司在1995年5月推出的面向对象程序设计语言,后来Sun公司被Oracle公司收购,Java也随之称为Oracle公司的产品

    2.Java语言主要特性

    ①简单:Java语言语法和C语言和C++语言很接近,很容易学习和使用,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的特性,Java语言不使用指针,而是引用,并提供了自动分配和回收内存空间,使得程序员不必为内存管理而担忧

    ②面向对象:Java提供类、接口和继承等面向对象的特性,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制,Java全面支持动态绑定,而C++只对虚函数使用动态绑定,总之,Java是一个纯面向对象程序设计语言

    ③分布式:Java支持Internet应用的开发,在基本的Java应用编辑接口中有一个网络应用编程接口,它提供了用于网络应用编程的类库,Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段

    ④健壮性:Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证,对指针的丢弃是Java的明智选择,Java的安全检查机制使得Java更具健壮性

    ⑤安全性:Java通常被用在网络环境中,Java提供了一个安全机制以防止恶意代码的攻击,除了Java具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制,如分配不同的名字空间以防替代本地的同名类、字节代码检查、并提供安全管理机制让Java应用设置安全哨兵

    ⑥体系结构中立:Java程序在Java平台被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行,这种途径适合于异构的网络环境和软件的分发

    ⑦可移植性:可移植性来源于体系结构中立性,Java还规定了各个基本数据类型的长度,Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的

    ⑧解释型语言:Java在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行,在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中

    ⑨高性能:与其他解释型的高级脚本语言相比,Java的确是高性能的,Java的运行速度随着JIT编译器技术的发展越来接近于C++

    ⑩多线程的、动态的:Java中线程是一种特殊的对象,它必须由Thread类或其子类来创建;Java语言是动态的,Java程序所需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类,这也有利于软件的升级,Java中的类有一个运行时的表示,能进行运行时刻的类型检查

    二、Java的开发工具

    1.Linux、Mac OS、windows

    2.Java JDK7/8

    3.eclipse、vscode、intelliJ IDEA、NetBeans等

    三、C++、Java、Python、Go如何选择

    1.Java有必要转Go吗?

    目前Go招聘岗位还小于Java,目前架构迁移成Go的基本都是互联网头部公司,最新架构最新技术不一定流行,但是要会,不建议作为主力语言进行学习

    2.C++、Java和Python该如何选?

    ①C++:底层开发,对性能要求高的业务,如Linux后台开发、嵌入式开发、游戏开发、编译器开发等

    ②Java当今编程语言的中坚力量,未来5年不会过时,有被Go、Python赶超的趋势

    ③Python:爬虫、数据可视化、人工智能,语法简单,但是数据结构和算法要求高,入门简单,学精和找工作门槛比较高,Python不建议把它作为主攻语言,可以把它作为一门辅助语言去了解和学习,写写脚本、处理处理文本还是挺好使的。

    总结:其实编程语言里很多东西都是一样的,只是基本语法有点差别,把一门语言的思想掌握好了,其余的还远吗,学好一门编程语言就足够了。

  • 相关阅读:
    为了 Vue 组件测试,你需要为每个事件绑定的方法加上括号吗?
    Spring Framework系统架构
    从 Module Federation 到微组件,看微前端概念演进
    第1章 现代通信网概述
    5个基于.Net Core值得推荐的CMS开源项目
    函数的参数
    Rust常用特型之Drop特型
    自动驾驶专题介绍 —— 停车位相关介绍
    使用 PPG(光电容积描记图)估计心率和 SpO2 水平(Matlab代码实现)
    罗马数字转整数
  • 原文地址:https://blog.csdn.net/mailtolaozhao/article/details/125904840