黑马程序员-学习日记(一) JAVA基础

本文介绍了Java语言的历史背景及其特点,详细讲解了Java的三种技术架构:J2EE、J2SE 和 J2ME 的应用场景。同时,文章还介绍了如何安装配置JDK和JRE,设置环境变量,以及简单的Java程序开发流程。

------- android培训java培训、期待与您交流! ----------

1.1Java语言概述

是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言。

是一种面向Internet的编程语言。

随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。

是简单易学,完全面向对象,安全可靠,与平台(操作系統)无关的编程语言。


1.1.1 Java语言的三种技术架构

J2EE(Java 2 Platform Enterprise Edition)企业版
是为开发企业环境下的应用程序提供的一套解决方案。
该技术体系中包含的技术如 Servlet Jsp等,主要针对于Web应用程序开发。
J2SE(Java 2 Platform Standard Edition)标准版(基礎版本)
是为开发普通桌面和商务应用程序提供的解决方案。
该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。
比如Java版的扫雷。
J2ME(Java 2 Platform Micro Edition)小型版
是为开发电子消费产品和嵌入式设备提供的解决方案。
该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等。
Java5.0版本后,更名为 JAVAEE    JAVASE    JAVAME


 

1.1.2 Java语言的特点:跨平台性

什么是跨平台性?

通过Java语言编写的应用程序在不同的系统平台上都可以运行。

原理是什么?

只要在需要运行java应用程序的操作系统上,

先安装一个Java虚拟机(JVM Java Virtual Machine)即可。

由JVM来负责Java程序在该系统中的运行。

 

1.1.3 Java语言的特点:跨平台性(图解)
黑马程序员 学习日记(一) - kisty_hui - kisty_hui的博客

1.2.1 什么是JRE,JDK?

 

JRE(Java Runtime Environment    Java运行环境)
包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
JDK(Java Development Kit    Java开发工具包)
JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。
其中的开发工具:编译工具(javac.exe)  打包工具(jar.exe)等
简单而言:使用JDK开发完成的java程序,交给JRE去运行。
注:为什么JDK中包含一个JRE呢?
其一,开发完的程序,总需要运行一下看看效果。
其二,也是最重要的,JDK中的开发工具其实都是java语言编写的应用程序,为了方便使用才打包成exe文件,
如果没有JRE,那么这些工具是运行不了的。


1.2.2 配置环境变量path(1)

在dos命令行中敲入javac,出现错误提示。

黑马程序员 学习日记(一) - kisty_hui - kisty_hui的博客
错误原理:当前执行的程序在当前目录下如果不存在,windows系统会在系统中已有的一个名为path的环境变量指定的目录中查找。如果还没有找到,就出现以上的错误提示。
所以进入到  jdk安装路径\bin目录下,执行javac。看到javac参数提示信息。
黑马程序员 学习日记(一) - kisty_hui - kisty_hui的博客
1.2.3 配置环境变量path(2)
每次执行java的工具都要进入到bin目录下,是非常麻烦的。
可不可以在任何目录下都可以执行java的工具呢?
根据windows系统在查找可执行程序的原理,可以将java工具所在路径定义到path环境变量中,让系统帮我们去找运行执行的程序。

1.2.4 配置环境变量path(3)
我的电脑--属性--高级--环境变量
编辑path环境变量,在变量值开始处加上java工具所在目录,后面用 “ ; ”和其他值分隔开即可。
打开DOS命令行,任意目录下敲入javac。
如果出现javac 的参数信息,配置成功。
这种配置方式,一劳永逸。
具体操作流程,可以参阅  JDK6安装配置简程.doc

1.2.45配置环境变量path(4)
临时配置方式:通过dos命令中set命令完成
set :用于查看本机的所有环境变量的信息。
set  变量名 :查看具体一个环境变量的值。
set  变量名=:清空一个环境变量的值。
set  变量名=具体值 :给指定变量定义具体值。
想要在原有环境变量值基础上添加新值呢?
首先,通过%变量名%操作符获取到原有环境变量的值。
然后加上新值后在定义给该变量名即可
举例:给path环境变量加入新值
set  path=新值;%path%
注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失

1.2.5 配置技巧
为了不因为jdk的目录或者目录名称的改变,而不断更改path的值,而导致对path变量值的误操作,可以通过以下技巧完成。
新创建一个环境变量 JAVA_HOME 记录住jdk的目录。
在path中通过%%动态的获取JAVA_HOME的值即可。
JAVA_HOME=F:\jdk1.6.0_01
path=%JAVA_HOME%\bin;%path%

%path%:动态获取path环境变量的值。
%JAVA_HOME%:动态获取名称为JAVA_HOME环境变量的值。


1.3 Java程序开发体验--编写
步骤一:编写
选择最简单的编辑器记事本。
敲入代码
class Demo
{}
将文件保存成Demo.java,这个文件是存放java代码的文件,称为源文件。

步骤二:编译
有了java源文件,将其编译成JVM可以识别的文件。
在该源文件目录下,通过javac编译工具对Demo.java文件进行编译。
如果程序没有错误,没有任何提示,但在当前目录下会出现一个Demo.class文件,该文件称为字节码文件,也是可以执行的java的程序。

步骤三:运行
有了可执行的java程序(Demo.class字节码文件)
通过运行工具java.exe对字节码文件进行执行。
出现提示:缺少一个名称为main的方法。
黑马程序员 学习日记(一) - kisty_hui - kisty_hui的博客
因为一个程序的执行需要一个起始点或者入口,所以在Demo类中的加入 public static void main(String[] args){}
对修改后的Demo.java源文件需要重新编译,生成新的class文件后,在进行执行。
发现没有编译失败,但也没有任何效果,因为并没有告诉JVM要帮我们做什么事情,也就是没有可以具体执行的语句。
想要和JVM来个互动,只要在main方法中加入一句
System.out.println("hello java");在重新编译,运行即可。

1.4 配置classpath(1)
既然class文件(字节码文件)是java的运行文件,可不可以实现,在任意目录下都可以执行某一目录下的class文件呢?
根据path环境变量的原理,可以定义一个名为classpath环境变量,将要运行的class文件所在目录定义在该变量中。
例:set classpath=c:\
classpath变量值是java类文件的目录
path变量是windows程序文件的目录

1.4.1 配置classpath(2)
JVM查找类文件的顺序:
如果没有配置classpath环境变量,JVM只在当前目录下查找要运行的类文件。
如果配置了classpath环境,JVM会先在classpath环境变量值的目录中查找要运行的类文件。
值的结尾处如果加上分号,那么JVM在classpath目录下没有找到要指定的类文件,会在当前目录下在查找一次。
值的结尾出如果没有分号,那么JVM在classpath目录下没有找到要指定的类文件,不会在当前目录下查找,即使当前目录下有,也不会运行。
建议:配置classpath环境变量时,值的结尾处不要加分号,如果需要访问当前目录可以用 “.”表示。

1.5 创建问题及解决方法
黑马程序员 学习日记(一) - kisty_hui - kisty_hui的博客
源文件名不存在或者写错,或者当前路径错误。 
黑马程序员 学习日记(一) - kisty_hui - kisty_hui的博客
类文件名写错,或者类文件不在当前路径下,或者不再classpath指定路径下。
黑马程序员 学习日记(一) - kisty_hui - kisty_hui的博客
编译失败,注意错误出现的行数,在到源代码中指定位置排错。
 
 
------- android培训 java培训 、期待与您交流! ----------

 

标题基于Python的自主学习系统后端设计与实现AI更换标题第1章引言介绍自主学习系统的研究背景、意义、现状以及本文的研究方法和创新点。1.1研究背景与意义阐述自主学习系统在教育技术领域的重要性和应用价值。1.2国内外研究现状分析国内外在自主学习系统后端技术方面的研究进展。1.3研究方法与创新点概述本文采用Python技术栈的设计方法和系统创新点。第2章相关理论与技术总结自主学习系统后端开发的相关理论和技术基础。2.1自主学习系统理论阐述自主学习系统的定义、特征和理论基础。2.2Python后端技术栈介绍DjangoFlask等Python后端框架及其适用场景。2.3数据库技术讨论关系型和非关系型数据库在系统中的应用方案。第3章系统设计与实现详细介绍自主学习系统后端的设计方案和实现过程。3.1系统架构设计提出基于微服务的系统架构设计方案。3.2核心模块设计详细说明用户管理、学习资源管理、进度跟踪等核心模块设计。3.3关键技术实现阐述个性化推荐算法、学习行为分析等关键技术的实现。第4章系统测试与评估对系统进行功能测试和性能评估。4.1测试环境与方法介绍测试环境配置和采用的测试方法。4.2功能测试结果展示各功能模块的测试结果和问题修复情况。4.3性能评估分析分析系统在高并发等场景下的性能表现。第5章结论与展望总结研究成果并提出未来改进方向。5.1研究结论概括系统设计的主要成果和技术创新。5.2未来展望指出系统局限性并提出后续优化方向。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值