面向对象程序设计语言:Java

简介: Java语言语法和C语言和C++语言很接近,很容易学习和使用,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的特性,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不建议把它作为主攻语言,可以把它作为一门辅助语言去了解和学习,写写脚本、处理处理文本还是挺好使的。

相关文章
|
13天前
|
Java
java中面向过程和面向对象区别?
java中面向过程和面向对象区别?
18 1
|
26天前
|
JavaScript 前端开发 Java
还不明白面向对象? 本文带你彻底搞懂面向对象的三大特征(2024年11月Java版)
欢迎来到我的博客,我是瑞雨溪,一名热爱JavaScript和Vue的大一学生。如果你从我的文章中受益,欢迎关注我,我将持续更新更多优质内容。你的支持是我前进的动力!🎉🎉🎉
23 0
还不明白面向对象? 本文带你彻底搞懂面向对象的三大特征(2024年11月Java版)
|
1月前
|
Java 关系型数据库 数据库
面向对象设计原则在Java中的实现与案例分析
【10月更文挑战第25天】本文通过Java语言的具体实现和案例分析,详细介绍了面向对象设计的五大核心原则:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则帮助开发者构建更加灵活、可维护和可扩展的系统,不仅适用于Java,也适用于其他面向对象编程语言。
32 2
|
3月前
|
Java 编译器
封装,继承,多态【Java面向对象知识回顾①】
本文回顾了Java面向对象编程的三大特性:封装、继承和多态。封装通过将数据和方法结合在类中并隐藏实现细节来保护对象状态,继承允许新类扩展现有类的功能,而多态则允许对象在不同情况下表现出不同的行为,这些特性共同提高了代码的复用性、扩展性和灵活性。
封装,继承,多态【Java面向对象知识回顾①】
|
3月前
|
Java
java中面向过程和面向对象区别?
java中面向过程和面向对象区别?
36 4
|
3月前
|
Java
接口和抽象类【Java面向对象知识回顾②】
本文讨论了Java中抽象类和接口的概念与区别。抽象类是不能被实例化的类,可以包含抽象和非抽象方法,常用作其他类的基类。接口是一种纯抽象类型,只包含抽象方法和常量,不能被实例化,且实现接口的类必须实现接口中定义的所有方法。文章还比较了抽象类和接口在实现方式、方法类型、成员变量、构造方法和访问修饰符等方面的不同,并探讨了它们的使用场景。
接口和抽象类【Java面向对象知识回顾②】
|
2月前
|
存储 Java 程序员
Java基础-面向对象
Java基础-面向对象
18 0
|
4月前
|
Java 数据处理 开发者
【Java基础面试十二】、说一说你对面向对象的理解
这篇文章阐述了面向对象是一种以类和对象为基础,通过封装、继承和多态等概念来模拟现实世界中的事物及其相互关系的程序设计方法,它强调以事物为中心进行思考和系统构造,与结构化程序设计相比,更符合人类的自然思维方式。
【Java基础面试十二】、说一说你对面向对象的理解
|
4月前
|
Java
【Java基础面试十三】、面向对象的三大特征是什么?
这篇文章介绍了面向对象程序设计的三大基本特征:封装、继承和多态,其中封装隐藏对象实现细节,继承实现软件复用,多态允许子类对象表现出不同的行为特征。
【Java基础面试十三】、面向对象的三大特征是什么?
|
3月前
|
Java 开发者
Java 面向对象
Java 是一种面向对象的编程语言,通过对象与类的概念组织代码和数据。面向对象编程的核心包括类、对象、继承、多态、封装和抽象。类是对象的蓝图,定义了属性和行为;对象则是类的实例。继承允许子类继承父类的属性和方法,增强代码复用性;多态则支持通过相同接口调用不同类型对象的行为,包括方法重载和重写。封装通过公共方法隐藏对象细节,提高安全性;抽象则对对象特征进行提炼,通过抽象类和接口实现。理解这些概念有助于设计高效、可维护的 Java 应用程序。
23 0