Java1 --- 开发前奏

简介: 电子计算机,俗称电脑,是一种能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件和软件所组成,没有安装任何软件的计算机称为裸机。

1. 计算机基础


1.1. 计算机


电子计算机,俗称电脑,是一种能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件和软件所组成,没有安装任何软件的计算机称为裸机。


1.2. 硬件和软件


1.2.1. 硬件


cpu是一台计算机的运算核心和控制核心。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU由运算器、控制器、寄存器、高速缓存及实现它们之间联系的数据、控制及状态的总线构成。作为整个系统的核心,CPU 也是整个系统最高的执行单元,因此CPU已成为决定电脑性能的核心部件,很多用户都以它为标准来判断电脑的档次。CPU的主频,即CP内核工作的时钟频率(CPU Clock Speed。该时钟速度越快,时间段内执行的指令就越多, 目前酷是2G-3G(1G是10000Mhz)例如,2MHz200万次/秒),3GHz(三十亿次/秒)。


内存是数据与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。


存储设备:内存不能长久保存数据(非ROM),断电时信息就丢失,程序和数据都会被保存在存储设备中(例如硬盘),当程序和数据需要使用时,再加载进内存,注意:内存读取和写入的速度要比存储设备快的多。

存储设备主要有:磁盘驱动器,光盘驱动器(cd dvd)USB闪存(U盘)。


1.2.2. 软件


软件的概述:按照一定顺序组织的计算机数据与指令的集合。

软件 = 数据+指令+文档


系统软件

例如:Widows xp Linux Unix

应用软件

例如:QQ、WPS、Photoshop、、微软的Office

软件开发:制作软件。

软件的本质 :提高人与计算机交流效率,方便人与机器交互。

1.3. 人机交互的方式:


图形化界面:简单直观,容易操作,用户的体验好。

dos命令交互方式:需要有一个控制台,输入特定的指令,让计算机完成一些操作。较为麻烦,需要记录住一些命令,而且只能完成一些比较单一的功能。

控制台打开的步骤:开始–所有程序—附件–命令行提示符

或者开始-输入cmd即可。

1.4. 常见的dos命令


盘符: 进入指定的盘符下。

dir : 列出当前目录下的文件以及文件夹

md : 创建目录

rd : 删除目录 注意:rd不能删除非空的文件夹,而且只能用于删除文件夹。

cd : 进入指定目录

cd… : 退回到上一级目录

cd \ : 退回到根目录

echo “hello java”>a.txt 写入文本到指定文件

type a.txt 显示文件内容命令

del : 删除文件 注意:不能删除文件夹,只能删除文件。

exit : 推出dos命令行

cls : 通知计算机将当前的命令清空

*: 是通配符。

tab 命令补全。

方向键上下是找回上次你写过的命令。


2. Java简介


语言起源

Java是SUN ( Stanford University Network 斯坦福大学网络公司 ) 1995年推出的一门高级编程语言。 Java名称的来源Java最初被命名为Oak,目标在于家用电器等小型系统的编程语言,随着市场的变化,SUN着眼于网络应用的开发。Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。 机顶盒 高斯林(高司令) 用户想看什么片就看什么…优酷


1995年5月23日,JAVA语言诞生 雏形

1996年,1997分别推出JDK1.0,JDK1.1版 1999年,JAVA被分成J2SE,J2EE,J2ME 2000年,JDK1.4发布 2004年9月30日18:00PM,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0 2005年,JAVA版本正式更名为JAVAEE,JAVASE, JAVAME 2006年12月,SUN公司发布JRE6.0    2009年04月20日,Oracle以74亿美元收购Sun。取得java的版权。 2010年9月,JDK7.0已经发布,增加了简单闭包功能。    2011年7月,甲骨文公司发布java7的正式版。


2013年8月计算机语言使用排行榜


疑问:学习java需要考证吗?(不需要考的, 英语四级证书)


2.2 java语言重要特性之跨平台


2.2.1 跨平台


什么是跨平台(计算机系统),跨平台概念是软件开发中一个重要的概念,即不依赖于操作系统,也不信赖硬件环境。一个操作系统下开发的应用,放到另一个操作系统下依然可以运行。


2.2.2. Java的跨平台


“write once run anywhere”

Java的跨平台是相对于其他编程语言而言的,通过Java语言编写的应用程序在不同的系统平台上都可以运行。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。在windows编译的c语言程序,在linux下是不能运行的。当然在linux下编译的c语言程序在windows下也是不能运行的。而Java语言在不同平台上运行时不需要重新编译。

Java跨平台的原理:Java的跨平台是通过Java虚拟机(JVM)来实现的。


2.2.3. Java虚拟机(JVM)


Java Virtual Machine 一个软件模拟的计算机。Java源程序想象成我们的C源程序,Java源程序编译后生成的字节码(.class)就相当于C源程序编译后的二进制可执行文件。JVM虚拟机相当于计算机系统(操作系统+硬件环境),Java解释器相当于CPU。

.exe文件直接在windows操作系统下运行,在CPU上运行的是机器码(.exe文件)

.class字节码文件是运行在JVM虚拟机下的,在Java解释器上运行的是Java字节码。

Java解释器相当于运行Java字节码的“CPU”,但该“CPU”不是通过硬件实现的,而是用软件实现的。Java解释器实际上就是特定的平台下的一 个应用程序。只要实现了特定平台下的解释器程序,Java字节码就能通过解释器程序在该平台下运行,这是Java跨平台的根本。当前,并不是在所有的平台 下都有相应Java解释器程序,这也是Java并不能在所有的平台下都能运行的原因,它只能在已实现了Java解释器程序的平台下运行。

20181002203236734.png20181002203303571.png


2.3Java的三大平台


JavaSE

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

例子:类似QQ、扫雷、飞秋、凌波这样子的桌面应用。

Java EE

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

Java ME

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


3.环境的搭建


3.1JDK简介:


JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。JDK是学好Java的第一步。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。


3.2JDK的安装


网址:http://www.oracle.com/index.htmlhttp://www.java.sun.com


2018100220331762.png2018100220332279.png201810022033320.png

3.3JDK目录介绍


bin目录:存放Java的编译器、解释器等工具(可执行文件)。

db目录:JDK7附带的一个轻量级的数据库,名字叫做Derby。

include目录:存放的调用系统资源的接口文件。

jre目录:存放Java运行环境文件。

lib目录:存放Java的类库文件。

src.zip文件:JDK提供的类的源代码。

安装JDK需要注意的事项:

安装路径中不要包含中文。

安装路径中不要包含空格。

3.4JRE简


JRE Java Runtime Environment Java运行环境。包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。


3.5配置path环境变量


问题:目前在控制台窗口下只能在jdk安装目录的bin目录下才能使用jdk的开发工具在控,如果想制台窗口下想要在任意目录下都可以使用javac与java或者jdk其他的开发工具那应该怎么做呢?

1.在dos窗口敲上javac

![在这里插入图片描述](https://img-blog.csdn.net/20181002203339700?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyNTU0MDA3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

我们在随意的一个目录敲javac或者java命令时候,发现dos窗口显示这个不是内部命令,然后我们在上面敲上notepad命令时,打开了一个记事本的程序,但是在当前目录下页没有存在notepad.exe的可执行文件,那么为什么能启动呢?

错误原因:原来在dos窗口上写上一个命令时候,如果在当前目录下找不到指定的可执行文件,那么它会根据path环境变量保存的路径去搜索是否存在这个可执行文件,如果存在则启动该程序,否则就没有这个命令。


2.解决方法:


1、 进入jdk的安装目录的bin目录。

2、 在dos命令上敲javac。(如果出现了以上的图信息则配置成功)

20181002203347975.png

3.为什么要配置path环境变量


因为在jdk下bin文件夹中有很多我们在开发中要使用的工具,如java.exe,javac.exe,jar.ex等,那么我们在使用时,想要在电脑的任意位置下使用这些java开发工具,那么我们就需有把这些工具所在的路径配置到系统的环境变量中,当我们使用时,系统可以帮且我们找到这些命令。


4.如何配置path环境变量


我们将jdk下bin的路径进行复制

在我们电脑-----属性-----高级-----环境变量---------path这项

将bin的路径放置到path的最前边,别忘记加分号.


20181002203406557.png

20181002203413125.png

5.JAVA_HOME环境的配置


有时候可能需要更换Jdk的目录,但是经常修改path的值可能会不小心修改其他的路径,解决方法:

1、 创建一个JAVA_HOME的变量。

20181002203422812.png

2、 JAVA_HOME的值为JDK的安装目录。

3、 配置path路径:%JAVA_HOME%/bin。

20181002203431428.png

以后需要更换JDK的目录时,只需要更换JAVA_HOME的目录即可。

设置临时变量:

set : 查看所有的环境变量信息。

set 变量名 :查看具体一个环境变量的值。

set 变量名=:清空一个环境变量的值。

set 变量名=具体值 :给指定变量定义具体值。

想要在原有环境变量值基础上添加新值呢?

首先,通过%变量名%操作符获取到原有环境变量的值。

然后加上新值后在定义给该变量名即可

举例:给path环境变量加入新值

set path=新值;%path%

注意:这种配置方式只在当前dos窗口有效。窗口关闭,配置消失。


4.JAVA程序入门


4. 1Hello Word程序入门


打开一个记事本在记事本里面写上class 类名{}

一个类缺少主函数不能独立运行。

可以独立运行了,但是没有效果。输出语句。

HelloWord 例子剖析:

class java关键字,用于什么一个类、

{} : 花括号表示范围。

main : 是主函数的如果(固定写法)。

4.2 helloworld的小细节


1. 缺少main方法

出现提示:缺少一个名称为main的方法。

20181002203442804.png

2. 源文件中的大小写要注意。初学者请牢记,第一个hello例子中只有 String和System中两个字符是大写的,其他的都小写。


3. 配置path和classpath时,里面的路径是所有查找的目标的父目录, 而不是目标自己。


4. A.java.txt


文本文件默认是txt结尾的,注意要把隐藏已知文件类型扩展名去掉。


5. 大小写

只有类名Demo,String和System中三个个首字母是大写的。

public class Demo{
    public static void main(String[] args) {
      System.out.println("hello java");
    }
  }

6. path

看path环境变量配置 ,里面的路径是所有查找的目标的父目录,而不是目标自己。

20181002203805643.png

7. 写错类名, 源文件名不存在或者写错,或者当前路径错误。

类文件名写错,或者类文件不在当前路径下,或者不在classpath指定 路径下。

20181002203809670.png


8. javac 生成的.class 文件的名称取决于类名跟.java名没有关系。


4.3 classpath环境变量


classpath的作用: 作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,一旦配置了classpath路径信息的时候,jvm与java编译器都会根据classpath指定的路径去寻找class文件。

如何设置当前目录(.)

set classpath=.;设置路径 与 set classpath=设置路径;.有什么区别?

“.”在前面的时候,java虚拟机会先从当前路径去寻找class文件,然后再到指定的路径去需找。如果”.”在后面,java虚拟机则会先寻找指定好的路径,然后再在当前的路径去寻找。

设置classpath的时候要加上 ; 就会在当前目录下查找。

5.作业


简述对JVM,JRE,JDK的理解。

JVM虚拟机相当于计算机系统(操作系统+硬件环境)

jre = java虚拟机 + 核心类库(辅助java虚拟机运行的文件)

jdk = jre + java开发工具

简述环境变量path和classpath的作用?

搭建环境变量path 可以在任意目录下运行对应目录的所有软件

独立编写hello world程序,编译并运行。

class Demo{

public static void main(String[]args){

System.out.println(“hello world”);

}

}

java语言是否区分大小写? class的作用,javac,java的作用?

分、class 存放代码 javac 编译代码 Java 执行代码

简述main方法(是什么,什么特点,怎么用,何时用?)

Main 主方法,一个类有且仅有一个主方法,一个类必须要用一个主方法,程序的入口


相关文章
|
2月前
|
Java API Maven
如何使用Java开发抖音API接口?
在数字化时代,社交媒体平台如抖音成为生活的重要部分。本文详细介绍了如何用Java开发抖音API接口,从创建开发者账号、申请API权限、准备开发环境,到编写代码、测试运行及注意事项,全面覆盖了整个开发流程。
264 10
|
2月前
|
监控 Java API
如何使用Java语言快速开发一套智慧工地系统
使用Java开发智慧工地系统,采用Spring Cloud微服务架构和前后端分离设计,结合MySQL、MongoDB数据库及RESTful API,集成人脸识别、视频监控、设备与环境监测等功能模块,运用Spark/Flink处理大数据,ECharts/AntV G2实现数据可视化,确保系统安全与性能,采用敏捷开发模式,提供详尽文档与用户培训,支持云部署与容器化管理,快速构建高效、灵活的智慧工地解决方案。
|
16天前
|
移动开发 前端开发 Java
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
JavaFX是Java的下一代图形用户界面工具包。JavaFX是一组图形和媒体API,我们可以用它们来创建和部署富客户端应用程序。 JavaFX允许开发人员快速构建丰富的跨平台应用程序,允许开发人员在单个编程接口中组合图形,动画和UI控件。本文详细介绍了JavaFx的常见用法,相信读完本教程你一定有所收获!
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
|
2天前
|
监控 JavaScript 数据可视化
建筑施工一体化信息管理平台源码,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
智慧工地云平台是专为建筑施工领域打造的一体化信息管理平台,利用大数据、云计算、物联网等技术,实现施工区域各系统数据汇总与可视化管理。平台涵盖人员、设备、物料、环境等关键因素的实时监控与数据分析,提供远程指挥、决策支持等功能,提升工作效率,促进产业信息化发展。系统由PC端、APP移动端及项目、监管、数据屏三大平台组成,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
|
1月前
|
Java 开发者 微服务
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
67 6
Spring Boot 入门:简化 Java Web 开发的强大工具
|
26天前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
110 13
|
1月前
|
算法 Java API
如何使用Java开发获得淘宝商品描述API接口?
本文详细介绍如何使用Java开发调用淘宝商品描述API接口,涵盖从注册淘宝开放平台账号、阅读平台规则、创建应用并申请接口权限,到安装开发工具、配置开发环境、获取访问令牌,以及具体的Java代码实现和注意事项。通过遵循这些步骤,开发者可以高效地获取商品详情、描述及图片等信息,为项目和业务增添价值。
67 10
|
25天前
|
前端开发 Java 测试技术
java日常开发中如何写出优雅的好维护的代码
代码可读性太差,实际是给团队后续开发中埋坑,优化在平时,没有那个团队会说我专门给你一个月来优化之前的代码,所以在日常开发中就要多注意可读性问题,不要写出几天之后自己都看不懂的代码。
61 2
|
1月前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
2月前
|
开发框架 Java 关系型数据库
Java哪个框架适合开发API接口?
在快速发展的软件开发领域,API接口连接了不同的系统和服务。Java作为成熟的编程语言,其生态系统中出现了许多API开发框架。Magic-API因其独特优势和强大功能,成为Java开发者优选的API开发框架。本文将从核心优势、实际应用价值及未来展望等方面,深入探讨Magic-API为何值得选择。
76 2