`
fox_mt
  • 浏览: 24051 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

从零开始学java-(二)for ZCL

 
阅读更多

    上一章节内容相信已经完全可以被理解,对于结尾处的三个问题,现在来给出答案,并加以解释

问题1:java特点是什么?

答:java的优良特点有很多,如跨平台,面向对象,分布式,多线程,安全性,健壮性,简单性等。后面我们会对这些特性,做详解解释。

 

问题2:java为什么可以跨平台?

答:java之所以可以跨平台,根本原因就是JVM,那么什么是JVM呢?英文全程是 Java Virtual Machine,中文就是java虚拟机,当然这不是我翻译过来的,那英文我也不认识(^.^),java虚拟机是java软件平台的基础,基于不同的操作系统对应不同的java虚拟机。不管什么操作系统,有了这个虚拟机,java的应用程序就可以运行,换句话,java应用程序实际上是依赖虚拟机运行,而每个操作系统都有对应的虚拟机,这就让一处编译,到处运行成为了现实,只因为三个字母:JVM

顺带说一句,java虚拟机,相当于是在物理机上由java虚拟出来的一台机器,这台虚拟机所使用的内存,cpu等等,是向物理机申请。也就是运行java应用的时候,先向物理机申请创建虚拟机的资源,创建虚拟机,然后应用程序在该虚拟机上运行。一个应用程序会创建一个虚拟机,多个应用之间互不影响

 

问题3:jdk是什么?

答:jdk没那么复杂,简单的一句话,jdk是java开发的工具集,里面包含几个工具,可以让我方便的进行开发工作。

 

好了,问题回答完了,我们就进入正题,开始真正的java开发之旅!

不过,开始之前,我们要了解几个概念,和一些工具的作用,根据第一篇文章配置好了环境变量之后,让我们来了解下,开发之前需要准备的东西:

1,java是什么样子的?

java文件是名字[点]java,例如:HelloWorld.java

 

2,什么是字节码,字节码是怎么来的?

字节码是java虚拟机执行的一种指令格式。是有java编译器将java的源文件编译成字节码文件

源文件就是我们应用程序的文件,这里又出现了另一个问题,字节码文件长什么样呢?其实和java文件很想,可以说是亲兄弟,因为他们的名字是一样的,只是后缀不同,就像是同姓不同命,字节码文件的后缀是class,已HelloWorld为例,HelloWorld.java经过编译器,生成HelloWorld.class这就是有java文件到字节码文件的变化

3,在我们安装的jdk的bin目录下都有些什么呢?

看过之后就知道了,里面有很多已exe结尾的可执行文件,太多了,我们看不过来,但是有几个需要我们重点注意:javac; java; javadoc; javap; appletviewer

这几个是我们将要使用的几个工具,最后一个appletviewer是java小应用程序浏览器,我们这里不对其做解释,有兴趣的话可以自己去了解下java 的小应用程序。

下面来解释下这些工具都是干嘛的:

javac:也就上面提到的java编译器,将java 的源代码转换成字节码,生成的文件是什么样的呢?回忆下!!

java:java解释器,用来执行java字节码文件

javadoc:依据java源程序和说明语句生成各种HTML文档

javap:java 的反汇编器,和javac正好相反,作用可想而知,可以自己实现下,将编译之后的文件在反编译回来,看看,得到的是什么。

到此为止,概念已经了解差不多了,开始动手操作了,操作之前,再唠叨一句,现在集成开发工具多的是,优秀的比比皆是,可能你已经知道很多,可能你电脑上已经有了,但是我个人建议,既然是初学,那么就从0开始,暂时放弃集成开发工具,对于我们理解java有很大的帮助了。好了,我们这里的工具就是windows下面的记事本,如果觉得颜色难看,可以使用editplus文本编辑器,或者sublime等

那么,正式开始,命令行,怎么打开,还记得么?windows标志+R,输入notepad,打开记事本

输入如下代码

public class HelloWorld{

/**

第一个java程序

*/

public static void main(String[] args){

System.out.println("HelloWorld!");

}

}

写完之后进行保存,注意保存的时候如图所示

 

 

名称问HelloWorld.java,保存类型为文档类型,编码保持ANSI不变

这里有个问题,就是保存在什么位置,建议单独建立一个文件夹,来存放我们编写java文件,为什么这样呢,后面会介绍,好了,我是保存在D:\java学习下面。

现在我们的java源码文件已经有了,那么我们要做的是把他编程虚拟机认识的字节码,想到什么没有?对了,javac工具,使用方式很简单,在dos窗口,也就是命令行,输入cmd,弹出来的窗口,进入HelloWorld文件在所的目录具体操作为:输入 D:回车,输入cd java学习 回车,到达目录下,输入dir查看文件是否存在,如下如所示



 

文件已经存在了,我们也达到了目标位置

那么开始使用编译工具,javac的用法很简单 javac java源码文件

对于本例就是 javac HelloWorld.java

输入之后,如果没有反应,出现D:\java学习>这就证明编译通过了,这个情况的出现,不知道是该高兴还是难过,高兴的是你太认真了,一个字母的都没错,遗憾的你错过了学习另一个只是的机会,O(∩_∩)O,别担心,我会继续说

编译之后,在看文件下面有什么文件,是不是多了一个class结尾的HelloWorld文件,没错,他就是字节码文件了,我们要运行的就是他

运行工具是哪个?回一下

ok,就是java,java命令和javac命令一样简单易用

java HelloWorld

注意,是HelloWorld,应用程序的名称,不是.class也不是.java

回车,

看看我们得到了什么

 那里就是我们输出的内容,好了,我们的第一个应用程序已经完工,他的功能就是在dos窗口下输出HelloWorld!

 

刚才错过了一个学习知识的机会,那么自己来创造吧,在HelloWorld.java 文件中随便做点儿修改

再编译试试,看看我们会得到什么?

好了,这一篇就到这里了,继续留作业

 

1,修改HelloWrold.java文件编译之后,出现什么?怎么看出现的东西?

2,试一试上面介绍的那几个java开发工具,看看效果?

3,在HelloWorld总有一段中文,这段中文干嘛的?怎么没看到有什么效果呢?

4,编译的时候写成HelloWorld.Java行不行,注意java 的J是大写的?结果是什么?原因呢?

5,什么叫做运算符?现在生活中你知道的运算符有多少?

6,什么叫数据类型?

 

 

 

  • 大小: 33.2 KB
  • 大小: 38.7 KB
  • 大小: 75 KB
分享到:
评论

相关推荐

    从零开始学习Z-Stack

    现在,我们将从零开始,深入探讨Z-Stack的相关知识点。 1. **Z-Stack的基础概念** - **Z-Stack架构**:Z-Stack通常由设备层、网络层和应用层构成,每一层都有特定的任务和功能,确保设备之间的高效通信。 - **...

    Z-Stack ZCL API.PDF

    Z-Stack ZCL API 是德州仪器(Texas Instruments, 简称TI)发布的一份技术文档,主要涉及ZigBee技术中的ZigBee Cluster Library(ZCL)API。ZigBee是一种基于IEEE 802.15.4标准的无线通信协议,常用于个人区域网络,...

    Z-Stack ZCL API

    ### Z-Stack ZCL API 知识点解析 #### 一、引言 ##### 1.1 目的 本文档旨在提供Z-Stack ZigBee Cluster Library (ZCL) API 的详细介绍,帮助开发者理解并利用这些API进行ZigBee设备的应用程序开发。 ##### 1.2 ...

    bekko:ZigBee 应用层(APS、ZCL、ZDP)Java 实现

    纯 Java ZigBee 应用程序框架 Bekko提供用于开发 ZigBee 应用程序的 Java API,并允许用户应用程序与标准 ZigBee 设备进行通信。 与其他“XBee API Java-Wrapper”不同,Bekko 具有 ZDO/ZDP 实现和标准化的 APS 数据...

    The document was created with Spire.PDF for Java

    标题 "The document was created with Spire.PDF for Java" 提供了一个关键信息,即文档是使用Spire.PDF for Java工具创建或处理的。Spire.PDF for Java是一款由E-iceblue公司开发的PDF库,它允许Java开发者在应用...

    zigbee ZCL开发大礼包

    一个是ZigBee Cluster Library 最新版的ZCL文档英文版,一个是Zigbee协议栈的API接口函数手册,二合一,自己找了好久,分享出来给大家,学习zigbee的人很有帮助,zigbee智能家居必看手册

    ZCL说明文档

    ZigBee Cluster Library(ZCL)是用于ZigBee设备之间通讯的一套协议集合,它定义了一组标准的cluster(群集),允许ZigBee设备进行更为细致和高效的数据交换。ZCL的文档为开发者提供了如何实现和使用ZigBee群集的...

    ZCL_SPEC_R7.pdf

    Zigbee联盟发布了最新版本的Zigbee Cluster Library Specification(ZCL SPEC),编号为R7。这份文档是Zigbee开发的必备工具书,详细记录了Zigbee协议中各个cluster(群集)的命令和属性,是进行Zigbee相关开发时的...

    易语言ZCL_核库函数模块

    易语言ZCL_核库函数模块易语言ZCL_核库函数模块易语言ZCL_核库函数模块

    zcl/se/zcl.message.h

    这是STM32WB系列,基于IEEE 802.15.4的zigbee信息收发头文件zcl/se/zcl.message.h

    Zigbee之ZCL概览

    ZCL的概念使得设备制造商能够更加专注于他们产品的核心功能,而不必从零开始构建复杂的通信协议。因此,对于任何想要深入了解ZigBee技术,特别是在设备控制和家庭自动化方面有应用需求的人来说,ZCL是一份难得的入门...

    Zigbee_ZCL_07-5123-07-ZigbeeClusterLibrary_Revision_7

    Zigbee技术的关键之一就是Zigbee簇库(Zigbee Cluster Library, ZCL)规范。ZCL规范定义了设备之间通信时所用的数据模型和消息格式,确保了不同厂商的设备能够以标准化的方式进行交云通信。 ZCL规范的定义包括了在...

    易语言模块ZCL_控件类库1.01.rar

    易语言模块ZCL_控件类库1.01.rar 易语言模块ZCL_控件类库1.01.rar 易语言模块ZCL_控件类库1.01.rar 易语言模块ZCL_控件类库1.01.rar 易语言模块ZCL_控件类库1.01.rar 易语言模块ZCL_控件类库1.01.rar

    易语言模块ZCL_多线程类1.01.rar

    易语言模块ZCL_多线程类1.01.rar 易语言模块ZCL_多线程类1.01.rar 易语言模块ZCL_多线程类1.01.rar 易语言模块ZCL_多线程类1.01.rar 易语言模块ZCL_多线程类1.01.rar 易语言模块ZCL_多线程类1.01.rar

    易语言模块ZCL_核库函数1.01.rar

    易语言模块ZCL_核库函数1.01.rar 易语言模块ZCL_核库函数1.01.rar 易语言模块ZCL_核库函数1.01.rar 易语言模块ZCL_核库函数1.01.rar 易语言模块ZCL_核库函数1.01.rar 易语言模块ZCL_核库函数1.01.rar

    Audio_Report(zcl).rar

    在IT行业中,音频驱动是操作系统与硬件之间的重要桥梁,它负责管理和优化音频设备的性能,确保音频数据能够...在提供的"Audio_Report(zcl).ppt"文件中,很可能会详细阐述这些内容,建议仔细研读以获取更具体的信息。

    6. ZigBee3.0 基于ZCL通信——开关控制 串口地址控制switch.zip

    在“ZigBee3.0 基于ZCL通信——开关控制 串口地址控制switch”的项目中,重点是利用ZCL库实现对开关设备的控制。这通常涉及到以下几个关键技术点: 1. **OSAL (Operating System Abstraction Layer)**:OSAL是TI...

    NXP Zigbee——ZCL

    ZigBee联盟已经定义了ZigBee集群库(ZCL),其中包含许多可以应用于不同功能领域的标准集群。 例如,所有ZigBee应用程序配置文件都使用ZCL中的基本群集。 ZCL为应用程序提供了通信手段。 它定义了一个头部和有效负载...

    ZCL

    例如,ZCL-master可能是ZCL的一个开源实现,包含了开发人员需要的全部源码和文档,方便他们在自己的项目中集成ZCL功能。 为了使用ZCL,开发者需要了解Zigbee网络架构,包括协调器、路由器和终端设备的角色,以及...

    易语言实例模块——ZCL_多线程类1.01.ec

    易语言实例模块——ZCL_多线程类1.01.ec

Global site tag (gtag.js) - Google Analytics