【Java基础】Java总览

这篇具有很好参考价值的文章主要介绍了【Java基础】Java总览。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、what-什么是Java?

      Java是一种面向对象的编程语言,其他面向对象的编程语言还有C#,C++,Python,Python,golang,VB等。

1、和其他语音对比

对比项\语言 C C++ Java
上线时间 1972年 1979年 1995年
特点 面向过程 面向对象 面向对象
特点

不需要任何运行环境;

编译简单,产生少量机器码;

移植性;

丰富的数据结构;

丰富的运算符;

完全兼容C语言;

数据封装和隐藏;

继承;

多态;

适合大型软件的设计和开发;

一次编译,到处执行;

封装;

继承;

多态;

简单;

自动垃圾回收;

缺点

(三种语言对比)

不适合大型项目;

封装性差,复用性差,不安全;

语法限制不严格;

对数组下标越界不作检查;

指针,可操作硬盘,不安全;

手动释放内存;

支持多继承;

学习成本相较Java较高;

手动释放内存;

运行速度相对较慢(多一层jvm)但随着对jvm的优化,性能已经提升;

不能直接操作底层;

没有指针,不够灵活;

* 缺点这一栏,主要想突出该语言的特点在一些情况下可能产生的问题。个人认为缺点和优点都是相较的,最适合研发场景需要的就是最好的。

2、Java语言的特点

        Java是用C++实现的,保留了C++的优点,如面向对象;丢弃了指针等容易使程序崩溃的内容,提升了语言的健壮性;去掉了头文件,指针,结构,联合等,学习起来更简单;通过jvm实现平台无关性;支持数据分布和操作分布,提供一整套网络类库,开发人员可以利用类库进行网络程序设计,方便地实现Java语言的分布式特性;对数组和字符串访问越界检查,并提供异常处理,可靠性高;天然支持多线程;支持网络编程;Java的编译器将源码(.java)编译成字节码(.class),字节码(.class)由解释器翻译成二进制码,使程序执行。同时Java支持即时编译JIT(把热点代码编译成本地相关的机器码保存下来,下次可减少编译时间,直接执行)。 

 3、JDK,JRE

JDK:Java development kit -Java开发工具,包含Java语言、Java虚拟机、Java类库,是支持Java程序开发的最小环境。

JRE:Java runtime environment -Java运行环境,包含JavaSE中核心类库API和Java虚拟机,简单理解为JVM+核心类库API。

JVM(Java Virtual Machine)Java虚拟机,运行于各种操作系统Linux,Windows,Solaris等之上,执行编译好的Java字节码class文件

JDK= JRE+一些工具类

4、Java基础 (后面的文章会一一讲到)

语法基础;

面向对象;

Exception;

Array;

基础类;

I/O Stream;

Collection /Generic;

Thread;

TCP、UDP;

GUI;

Meta data;

Regular Expression;

5、Java的发展体系

       JDK初步:作为其他方向的基础;

       JavaWeb编程:针对Web程序;

       J2EE:企业级应用

二、where-用在什么地方?

 

【Java基础】Java总览

三、when-什么时候用?

        任何时候,都可以考虑使用Java作为开发语言。

四、who-什么人使用?

        有一定计算机基础,理解能力。

五、why-为什么用Java?

        1、面向对象;

        2、具备平台无关性,提供程序运行的解释环境,一次编译,导出执行-JVM;

        3、健壮性,吸收了C/C++的特点,去掉了影响健壮性的部分(如指针,内存申请和释放)-垃圾收集;

        4、内置安全;

        Java的核心机制:JVM,垃圾收集机制。

        JVM屏蔽了底层运行平台的差异,使开发专注在应用开发。JVM将源代码编译成.class文件,由JVM将字节码编译成对应的操作系统能执行的文件,该操作系统只需要安装对应的JVM即可,实现一次编译,到处执行。对比C/C++,只能一次将代码编译成对应的操作系统能执行的文件,操作系统不一样时,需要重新编译。JVM就相当于Java程序的操作系统,JVM的可执行文件是.class文件。需要注意的是,JVM为Java程序屏蔽了操作系统的差异,但不同的操作系统需要运行不同的JVM。

【Java基础】Java总览

六、how-如何使用?

        具体安装流程,网上的优秀文章多,本文将不再赘述。可以阅读:

Java基础:Java开发环境下载以及安装【详细】_jdk1.8.0_251_1024de小shen的博客-CSDN博客 等博客。

        值得注意的是,在配置时,关于path和classpath。

        path:系统路径,Windows系统执行命令查找路径;

        classpath: 类路径,Java文件编译和执行查找class文件命令的查找路径;

         

        以上就是我对Java总体上的了解,感谢大家的阅读。文章来源地址https://www.toymoban.com/news/detail-423038.html

到了这里,关于【Java基础】Java总览的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Java面试题】Java基础——面向对象

    重载和重写的区别★★★ 重载(Overloading)和重写(Overriding)都是Java中面向对象编程的特性,它们都可以让子类继承父类的方法。但是它们之间有一些重要的区别: 定义方式: 重载(Overloading): 在同一个类中 ,可以有 多个方法名相同但参数列表不同的方法 。当调用一个方法时,

    2024年02月11日
    浏览(38)
  • 【java】面向对象的编程基础

    true false 这里输入set和get可以自动将函数补全,传参初始化在构造属性之后 cc ccccc coleak 这里说明先构造属性,再执行代码块,再初始化 静态代码块 4 4 我是静态变量初始化 我是静态代码块 我是成员变量初始化 我是普通代码块 我是构造方法 快速构造,点击生成,构造函数,

    2023年04月16日
    浏览(45)
  • Java基础 --- 面向对象综合训练

    格斗游戏,每个游戏角色的姓名,血量,都不相同,在选定人物的时候(new对象的时候),这些信息就应该被确定下来。 补充: 正题: 定义数组存储3个商品对象。 商品的属性:商品的id,名字,价格,库存。 常见三个商品对象,并把商品对象存入到数组当中。 定义数组循

    2024年03月19日
    浏览(42)
  • 〔005〕Java 基础之面向对象

    对象: 是一种特殊的数据结构 对象: 使用类 new 出来的,有了类就可以创建对象,例 Random r = new Random() ,其中 r 就是一个对象 格式: public class 类名 { 变量和一些类方法 } 面向对象编程,更加符合人类的思维习惯,编程也会更直观 其实万物皆对象,如果想操作学生数据,就

    2024年02月05日
    浏览(36)
  • Java基础练习十(面向对象)

    以下名词中哪些是对象? 猫 狗 Tom Jerry 人 帅哥 美女 迪丽热巴 胡歌 Phone iPhone 14 Pro Max 《Java面向对象》 1. 编写一个Student类,包含name、gender、age、id、score属性,分别为String、String、int、int、double类型。类中声明一个say方法,返回String类型,方法返回信息中包含所有属性值。

    2024年02月12日
    浏览(35)
  • 【Java基础篇 | 面向对象】—— 封装详解

    个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 本专栏旨在分享学习Java的一点学习心得,欢迎大家在评论区讨论💌 封装概念 : 将数据和对数据的操作封装在一个类中,对外部的访问只通过类提供的

    2024年02月09日
    浏览(37)
  • Java基础(七)面向对象编程(高级)

    回顾类中的实例变量(即非static的成员变量) 创建两个Circle对象: Circle类中的变量radius是一个实例变量(instance variable),它属于类的每一个对象,c1中的radius变化不会影响c2的radius,反之亦然。 如果想让一个成员变量被类的所有实例所共享,就用static修饰即可,称为类变量(

    2023年04月16日
    浏览(43)
  • Java学习路线(8)——面向对象基础(2)

    一、static 概念: static是静态的意思,可以修饰成员变量和成员方法。当修饰成员变量时,在内存中 只存储一份 ,可以被 共享访问、修改 。当修饰成员方法时,可以被 共享访问 ,也被称为 公共方法 。 静态成员变量 访问格式: 【类名.静态成员变量】或【对象名.静

    2024年02月05日
    浏览(49)
  • 【java 基础二 】- 面向对象、类、接口等

    Java面向对象编程(OOP)是一种编程范式,其旨在通过将程序逻辑封装在对象中来使代码更易于理解和维护。Java是一种面向对象的编程语言,它支持封装、继承和多态等概念。以下是Java面向对象编程的核心概念: 对象(Object):对象是具有属性和行为的实体。在Java中,对象是通过

    2024年02月08日
    浏览(46)
  • 【狂神说Java】Java零基础学习笔记-面向对象

    面向过程思想 步骤清晰简单,第一步做什么,第二步做什么.... 面对过程适合处理一些较为简单的问题 面向对象思想 物以类聚, 分类 的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。

    2024年02月12日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包