• java核心学习笔记(二) 学习环境与学习的方法以及java几个包的作用


    本系列博客为原创博客,旨在学习整理之用,转载请注明出处,谢谢。

      学习环境的介绍:javaJDK1.7 , 

              windows下使用 IDE:IntelliJ IDEA 2017.2.1 x64 

              linux下使用IDEA或者VIM:若为学习项目集成编译的过程原理使用vim配合terminal,若为学习语言本身的开发则选择集成开发环境

      学习过程介绍:不重点学习java的桌面应用编程,初步会重点学习java集合框架、数据结构、算法、io、多线程、等内容

      对于程序的基础性问题如数据类型之类不会再赘述,对于一些细节问题不予细扣

      在学习过程中会自己写一些代码,探索如何讲些过的代码设计成可重用模式,不断思考。

      对于之前学习过程中不清楚的概念会在这里一一记录,手打

      每一篇博客不要想着解决更多的问题,只要解决一到两个问题就好。

      java的方便之处在于有着极其强大的类库,号称我们只需要关注业务就好,但实际上必须对java有一定的了解才能自如得写出可用性高的健壮的代码。

      java类库使用查询http://tool.oschina.net/apidocs/apidoc?api=jdk_7u4 。

        java.applet:java小程序包,java小程序可以直接嵌入网页中,不过现已被强大的javasccript替代。

              Provides the classes necessary to create an applet and the classes an applet uses to communicate with its applet context.

        java.awt:包含用于创建图形界面和绘制图形图像的所有类。

              Contains all of the classes for creating user interfaces and for painting graphics and images.

        java.beans:这个包的作用不太懂,查阅了资料:1)允许你建立软件组建;2)包含与开发 beans 有关的,即基于 JavaBeansTM架构的组件;

              上面的解释也无法形象理解,下面记录一下本人暂时的理解:java bean,字面来讲是java 的豆子,说人话就是java的组件,你可以做自己的组件。

              可能直接看英文会理解的形象点:Contains classes related to developing beans -- components based on the JavaBeans™ architecture.

        java.beans.beancontext:为bean提供可执行环境 Provides classes and interfaces relating to bean context.英文理解过来是为bean的内容(上下文)提供类和借口来连接

        *java.io:Provides for system input and output through data streams, serialization(序列化) and the file system.简单讲就是提供系统输入输出

        *java.lang:Provides the classes that are fundamental of the java programming language 提供java程序语言的基础类与核心类,也是Object类所在的包

            在java.lang包中有很多值得研究和推敲的类,比如大名鼎鼎的java.lang.annotation(注解相关)还有java.lang.ref(垃圾回收相关),实际上作者也仅仅了解这些,更深入的了解随着之后的展开再讨论,这里县做一个简单的阐述

            *java.lang.annotation:Provides library support for the Java programming language annotation facility. 提供java程序语言注解能力的库

            java.lang.instrument:Provides services that allow Java programming language agents to instrument programs running on the JVM.指的是可以用独立于应用程序之外的代理(agent)程序来监测和协助运行在JVM上的应用程序。这种监测和协助包括但不限于获取JVM运行时状态,替换和修改类定义等。

            *java.lang.invoke:The java.lang.invoke package contains dynamic language support provided directly by the Java core class libraries and virtual machine.

                    这个厉害了,这就是我们常说java动态类型,也叫做多形性,也叫做多态,实现多态的特性用到的方法就是动态绑定,学习多态特性的一个很好的例子就是java集和框架,下一节会重点讲述。这个package包含了java核心类库和虚拟机直接提供的动态语言支持。

            java.lang.management:Provides the management interfaces for monitoring and management of the Java virtual machine and other components in the Java runtime.提供管理接口,来检测和管理java虚拟机和其他java运行时的components,像操作系统什么的也可以检测,总之就是很强大

            *java.lang.ref:Provides reference-object classes, which support a limited degree of interaction with the garbage collector.提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。这个垃圾回收包也是需要认真学习的。

             *java.lang.reflect:Provides classes and interfaces for obtaining reflective information about classes and objects.提供了 类和接口来支持反射,支持运行时改变程序结构和变量类型,这也是java被称为动态语言。

            java.math:提供数学运算的类与方法;

            java.net:Provides the classes for implementing networking applications.提供了支持网络通信的包

            java.nio:defines buffers, which are containers for data, and provides an overview of the other packages.提供了一种新的IO方式,速度变快,这里有一篇博客来学习NIO的原理http://blog.csdn.net/u012684933/article/details/49682649

            java.rmi :java远程方法调用,让java虚拟机上的对象像调用本地对象一样调用另一个java虚拟机上的对象。

            java.security:java安全框架

            java.sql:提供类和接口来操作数据库

            java.text :提供类和就口,用以 与自然语言无关的方式来处理文本,日期,数字和消息。

            java.util:java各类唱哟个工具包,包含集合框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组、日期Date类、堆栈Stack类、向量Vector类等)。集合类、时间处理模式、日期时间工具等各类常用工具包。

            剩下的是java扩展包,即javax包,由有企业或组织提供的类库,org包,不再赘述,总之java发展到现在已经几乎能做任何开发,学习的时候注意有所侧重,不要钻到细节里面。

            

       

         

      

      

  • 相关阅读:
    服务器新环境搭建笔记
    mysql存储过程中的异常处理
    Maven为不同环境配置打包
    redis 绑定任意ip
    Redis 【Hash】 一句话说明
    Redis 【string】 一句话说明
    Redis 【keys】 一句话说明
    Redis命令参考【EXPIRE】
    Apache Maven 入门篇 ( 下 )
    Apache Maven 入门篇 ( 上 )
  • 原文地址:https://www.cnblogs.com/Theshy/p/7325788.html
Copyright © 2020-2023  润新知