Java入门总结

写前面

        由于这段时间研究运维和做项目,自己的进度暂时放下了,之前学习的东西还没有总结,我想如果再不总结的话,自己可能真的就不能很好的产生联系了。
   发自内心的说,自己刚接触到Java的时候异常的兴奋,我相信这一定是自己的又一个转折点。Java语言作为面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程.


入门

        学习Java的时候,自己想到了当时VB学习的一些情景,毕竟他一种语言呢。但是跟涛哥和丽萍姐交流的时候,自己的大方向又清晰了。基础的知识自己在不断积累的过程中深入,java的美体现在她的框架的灵活多样。虽然我现在不是很能体会,不过我想自己早晚会明白的。今天自己对基础的知识做一个总结,也算是一个简单的入门吧。


整体认识

        近期总结,想着还是以导图的方式觉得自己可以影响更加深刻,下面是自己的导图,欢迎大家拍砖斧正~不过刚接触都是很基础的东西,还要不断的研究,下面自己对其中感兴趣的内容做了一个简单的总结。

这里写图片描述


java历史

        javaSE(标准版) javaEE(企业版) javaME(微型版)
JDK(java开发工具包)JRE(java运行环境)IDE(集成开发环境)

  • Java SE(java Platform,Standard Edition)

     Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。java se 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。 J2SE就是做那种桌面安装程序样的,像QQ,WORD那种应用程序。

  • java ee(Java Platform,Enterprise Edition)

    这个版本以前称为 J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。 J2EE 就是做基于Internet的应用程序,像选课系统,企业网站,银行系统之类的。

  • Java ME(Java Platform,Micro Edition)。

    这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。 J2ME就是做嵌入式系统开发的,像手机游戏之类的,像现在流行的Android操作系统。

内存

        之前自己对于声明和实例化一直是一知半解,后来慢慢了解了,通过近期的验收项目,自己的认识又上升了一些,最大的体现是从知道到如何方便我们做的更好。下面是自己截取一张内存分配图片, 本人看完后是清楚了很多。

这里写图片描述

        Java中对象都是分配在heap(堆)中。从heap中分配内存所消耗的时间远远大于从stack产生存储空间所需的时间。所以我们在使用的时候要考虑我们如果只需要对象引用,是不是可以不用实例化,这样内存是不是可以占用的少一些。这篇文章自己觉得挺有趣的分享给大家,喜欢点击这里

容器

        在Java当中,如果有一个类专门用来存放其它类的对象,这个类就叫做容器,或者就叫做集合,集合就是将若干性质相同或相近的类对象组合在一起而形成的一个整体 。所提供的的容器API位于java.util包内。

这里写图片描述

  • 容器分为Set集、List列表、Map映射
            
    Set集合:由于内部存储结构的特点,Set集合中不区分元素的顺序,不允许出现重复的元素,TreeSet容器特殊,元素放进去的时候自然而然就有顺序了,Set容器可以与数学中的集合相对应:相同的元素不会被加入。
    List列表:由于内部存储结构的特点,List集合中区分元素的顺序,且允许包含重复的元素。List集合中的元素都对应一个整数型的序号记载其在容器中的位置,可以根据序号存取容器中的元素—有序,可以重复 。
    Map映射:由于内部存储结构的特点,映射中不能包含重复的键值,每个键最多只能映射一个值,否则会出现覆盖的情况(后面的value值会将前面的value值覆盖掉),Map是一种把键对象和值对象进行映射的集合,即Map容器中既要存放数据本身,也要存放关键字:相同的元素会被覆盖。

IO流

        流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。 Java流操作有关的类或接口:

这里写图片描述

字符流与字节流

        字符流的由来: 因为数据编码的不同,而有了对字符进行高效操作的流对象。本质其实就是基于字节流读取时,去查了指定的码表。 字节流和字符流的区别:

  • 读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读多个字节。
  • 处理对象不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。
    结论:只要是处理纯文本数据,就优先考虑使用字符流。 除此之外都使用字节流。

线程

        


结语

        对于java的学习,自己只是知道了些皮毛,我想这段学习的过程中,更多的是编程思想的领悟,和她的无限美妙之处。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 35
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值