一、Java语言概述

  • 1、软件开发介绍
    • 1.1 常用的DOS命令
  • 2、计算机编程语言介绍
  • 3、Java语言概述
    • 3.1、Java基础知识图解
    • 3.2、Java简史
    • 3.3、Java技术体系平台
    • 3.4、Java语言的特点
  • 4、运行机制及运行过程
  • 5、Java的环境搭建
    • 5.1、JDK和JRE
    • 5.2、下载、安装、配置环境变量
  • 6、开发体验
    • 6.1、第一个Java程序
    • 6.2、开发体验小结
  • 7、注 释(Comment)
  • 8、Java API文档
  • 9、良好的编程风格
  • 10、常用的Java开发工具

1、软件开发介绍

  • 软件开发:软件,即一系列按照特定顺序组织的计算机数据和指令的集合。有系统软件应用软件之分。

Pascal之父Nicklaus Wirth: “Algorithms+Data Structures=Programs” (算法+数据结构=程序)

  • 人机交互方式:

    • 图形化界面(Graphical User Interface GUI):简单直观,易于接受,容易上手操作。(施乐——》苹果——》微软)
    • 命令行方式(Command Line Interface CLI): 较为麻烦,需要在控制台,输入特定的指令,让计算机完成一些操作。

1.1 常用的DOS命令

  • 打开dos窗口:

    • 方法一:开始,输入cmd,回车;(win10)
    • 方法二:⊞+R打开【运行】窗口,输入cmd,回车;
    • 方法三:文件资源管理器地址栏,直接输入cmd,回车;
  • 常用的DOS命令
    • d : 切换目录到D盘(要操作哪个盘,需要先切换至对应盘)
    • dir : 列出当前目录下的文件以及文件夹
    • md : 创建目录
    • rd : 删除目录(空目录才能删除)
    • cd : 进入指定目录
    • cd… : 退回到上一级目录
    • cd: 退回到根目录
    • del : 删除文件(del 文件夹时,可以删除文件夹下的全部文件 )
  • 常用快捷键
    • ← →:移动光标
    • ↑ ↓:调阅历史操作命令
    • Delete和Backspace:删除字符

2、计算机编程语言介绍

计算机语言:人与计算机交流的方式

  • 第一代语言:机器语言。指令以二进制代码形式存在。
  • 第二代语言:汇编语言。使用助记符表示一条机器指令。
  • 第三代语言:高级语言。
    • 面向过程的语言:C、 Pascal、 Fortran
    • 面向过程/面向对象:C++
    • 面向对象的语言:Java
    • Java是跨平台的纯面向对象的语言

3、Java语言概述

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

3.1、Java基础知识图解

3.2、Java简史

  • 1991年 Green项目,开发语言最初命名为Oak (橡树)
  • 1996年,发布JDK 1.0
  • 1999年,Java分成J2SE、 J2EE和J2ME, JSP/Servlet技术诞生
  • 2004年,发布里程碑式版本: JDK 1.5, 更名为JDK 5.0
  • 2005年, J2SE -> JavaSE, J2EE -> JavaEE, J2ME -> JavaME
  • 2009年,Oracle公司收购SUN,交易价格74亿美元
  • 2014年,发布JDK 8.0,是继JDK 5.0以来变化最大的版本
  • 2018年3月, 发布JDK 10.0,版本号也称为18.3
  • 2018年9月,发布JDK 11.0,版本号也称为18.9
  • 后每6个月发布一个版本

3.3、Java技术体系平台

  • Java SE(Java Standard Edition)标准版:支持面向桌面级应用的Java平台, 提供了完整的Java核心API。
  • Java EE(Java Enterprise Edition)企业版:主要针对于Web应用程序开发,包含Servlet 、 Jsp等。
  • Java ME(Java Micro Edition)小型版:支持Java程序运行在移动终端(手机、 PDA)上的平台。
  • Java Card:支持一些Java小程序( Applets)运行在小内存设备(如智能卡)上的平台
  • 当前主要应用方向:
    • 企业级应用:复杂的大企业网站。 Java的安全机制以及它的跨平台的优势,使它在分布式系统领域开发中有广泛应用。
    • Android平台应用: Android应用程序使用Java语言编写。客户端开发。
    • 大数据平台开发:各类框架有Hadoop, spark, storm, flink等,还有各种中间件如flume, kafka, sqoop等等 ,这些框架以及工具大多数是用Java编写而成。

(删除线中的内容表示目前使用较少)

3.4、Java语言的特点

  • 特点一: 面向对象:

    • 两个概念:类、对象;
    • 三大特性:封装、继承、多态
  • 特点二: 健壮性:
    • 吸收了C/C++语言的优点,但去掉了指针、内存的申请与释放等影响程序健壮性的部分。
    • 提供了一个相对安全的内存管理和访问机制,自动的垃圾回收机制。
  • 特点三: 跨平台性:
    • 在不同的系统平台上都可以运行。 “Write once , Run Anywhere”。
    • 先安装一个Java虚拟机JVM,由JVM来负责Java程序在该系统中的运行。

4、运行机制及运行过程

  • 核心机制一:Java虚拟机 (Java Virtal Machine)

    • JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。
    • 对于不同的平台,有不同的虚拟机。
    • 只有某平台提供了对应的java虚拟机, java程序才可在此平台运行
    • Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”
  • 核心机制二:垃圾收集机制 (Garbage Collection)
    • 不再使用的内存空间应回收—— 垃圾回收。它提供一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时,检查并释放那些可被释放的存储空间。
    • 垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预。
    • Java程序还是会出现内存泄漏和内存溢出问题。

5、Java的环境搭建

5.1、JDK和JRE

  • JDK(Java Development Kit Java开发工具包):开发工具 + JRE。

    • 开发工具:编译工具(javac.exe) 打包工具(jar.exe)等。
  • JRE(Java Runtime Environment Java运行环境):JVM + 核心类库(Java SE标准类库)。
  • Java 8.0 Platform
  • JDK、 JRE、 JVM关系

5.2、下载、安装、配置环境变量

  • 官网(java.sun.com)下载,傻瓜式安装。建议也根据提示安装JRE。(安装路径不要有中文或者空格等特殊符号)
  • 安装后的文件目录:
    • bin:开发工具
    • db:数据库
    • include:C语言编写的头文件
    • jre:Java运行环境
    • lib:jar包
    • src.zip:Java开源的代码,类库
  • 环境变量的配置:
    • 配置环境变量的原因:为了在任何文件路径下执行bin下的命令
    • 我的电脑–属性–高级系统设置–环境变量
    • 新建:JAVA_HOME=D:\Java\jdk1.8.0_131(叫JAVA_HOME是因为tomcat启动时需要识别)
    • 修改path:在最前面添加 %JAVA_HOME%\bin;(path环境变量是window操作系统执行命令时,所要搜寻的路径)
  • 验证配置:在dos窗口中,输入命令javac或者java

6、开发体验

6.1、第一个Java程序

  • 第一个Java程序: HelloWorld.java

    class Hello{public static void main(String[] args) {System.out.println(“Hello World!”);}
    }
    
  • .java文件:源文件,通过编译工具(javac.exe)进行编译。
    .class文件:字节码文件,编译器编译后生成的,JVM可以识别的。

    • 编译命令:javac HelloWorld.java
    • 编译后,生成Hello.class文件
  • 通过运行工具(java.exe)对.class文件进行执行。

    • 运行命令:java Hello
    • 修改后的源文件需要重新编译,生成新的class文件后,再进行执行
    • main的方法:程序执行的起始点或者入口

6.2、开发体验小结

  • 1、java程序编写 - 编译 - 运行的过程:
    编写:我们将编写的java代码保存在以".java"结尾的源文件中
    编译:使用javac.exe命令编译我们的java源文件,生成字节码文件。字节码文件名=类名。格式:javac 源文件名.java
    运行:使用java.exe命令解释运行我们的字节码文件。 格式:java 类名
  • 2、在一个java源文件中可以声明多个class。
    • 但是,最多只能有一个类声明为public类,且文件名必须按该类名命名;
    • 其它类的个数不限;
    • 编译以后,会生成一个或多个字节码文件,字节码文件的文件名与java源文件中的类名相同。
public class Hello {public static void main(String[] args) {System.out.println("Hello World!");}
}class Person{}class Animal{
}

  • 3、程序的入口是main()方法,不能缺少;它的书写格式是固定的;
  • 4、必须按照语法规则编写代码:
    • 严格区分大小写;
    • 每个语句以“;”结束;
    • 大括号都是成对出现的, 缺一不可;

7、注 释(Comment)

  • 注释:用于注解说明解释程序的文字
  • Java中的注释类型:
    • 单行注释,格式: //注释文字
    • 多行注释,格式: /* 注释文字 */(不允许有多行注释嵌套)
    • 文档注释(java特有),格式: /** 注释文字 */(可以被javadoc 解析)
  • 作用:
    • 对所写的程序进行解释说明,增强可读性;
    • 调试所写的代码;
  • 特点:
    • 单行注释和多行注释,被注释的文字,不会被JVM(java虚拟机)解释执行。不参与编译,字节码文件中不包含注释掉的信息;
    • 文档注释可以被javadoc 解析,生成一套以网页文件形式体现的该程序的说明文档;
      命令行语法1:javadoc -d xxxxx HelloWorld.java
      命令行语法2:javadoc -d xxxxx -author -version HelloWorld.java(显示作者和版本)
    • 多行注释不可以嵌套使用
/**
我是文档注释
@author cc
@version v1.0
*/
public class Hello {/*我是多行注释*/public static void main(String[] args) {// 我是单行注释System.out.println("Hello World!");}
}

8、Java API文档

  • API (Application Programming Interface,应用程序编程接口)是 Java 提供的基本编程接口。习惯上:将语言提供的类库,都称为api。
  • API文档:针对于提供的类库如何使用,给的一个说明书。
  • 下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html

9、良好的编程风格

  • 正确的注释和注释风格

    • 使用文档注释来注释整个类或整个方法。
    • 如果注释方法中的某一个步骤,使用单行或多行注释。
  • 正确的缩进和空白
    • 使用一次tab操作,实现缩进
    • 运算符两边习惯性各加一个空格。比如: 2 + 4 * 5。
  • 块的风格
    • Java API 源代码选择了行尾风格("{"放在行位)

10、常用的Java开发工具

  • IDE:集成开发环境

    • Eclipse:免费,拥有众多插件;https://eclipse.org/
    • MyEclipse:Genuitec公司发布,和Eclipse不是同一个公司;有收费版;http://www.myeclipsecn.com/
    • IntelliJ IDEA:JetBrains公司产品,当前最流行的,更人性化、方便;https://www.jetbrains.com/idea/
    • JBuilder(已成历史)
    • NetBeans(已成历史)

从零开始学JAVA:一、Java语言概述相关推荐

  1. 从零开始学Java-Day01:Java常用计算机基础知识、JDk的下载与安装、环境变量的配置、IDEA的下载与安装

    1.计算机 (1)硬件:为软件运行提供物质基础. 举例:CPU,硬盘,内存,显卡,鼠标 (2)软件:使计算机按照事先预定好的顺序完成特定的功能. a:系统软件:DOS,Windows,Linux,Un ...

  2. 从零开始学python数据分析-【01】从零开始学Python—数据分析与挖掘概述

    马云曾说"中国正迎来从IT时代到DT时代的变革",DT就是大数据时代.数据已成为企业的核心资产和宝贵资源,企业愈加重视和善加利用数据分析与挖掘技术. 1.1什么是数据分析与挖掘 数 ...

  3. 【01】从零开始学Python—数据分析与挖掘概述

    马云曾说"中国正迎来从IT时代到DT时代的变革",DT就是大数据时代.数据已成为企业的核心资产和宝贵资源,企业愈加重视和善加利用数据分析与挖掘技术. 1.1什么是数据分析与挖掘 数 ...

  4. 第1章 Java语言概述

    第1章 Java语言概述 声明 0. Java语言应用场景 1. 软件开发介绍 2. 计算机编程语言介绍 3. Java语言概述 4. Java程序运行机制及运行过程 5. Java的环境搭建  5. ...

  5. java 获取打印机缺纸_JAVASE 语言概述和JAVA

    第一章:开发前言 计算机分为硬件和软件,一般来说.硬件就是组成计算机的可见的物理组件.我们的电脑.手机.电子设备都算一个小的计算机.而软件提供看不见的指令,这些指令控制硬件并且通过硬件完成特定任务. ...

  6. 从零开始学java(二十六)--多维数组,多维数组存储表格数据

    从零开始学java(二十六)--多维数组 多维数组 多维数组存储表格数据 多维数组 多维数组可以看成以数组为元素的数组.可以有二维.三维.甚至更多维数组,但是实际开发中用的非常少.最多到二维数组(学习 ...

  7. 第二讲 Java语言概述

    计算机语言 在了解Java语言概述之前,我们得知道什么是计算机语言.语言是人类进行沟通交流的各种表达符号,方便人与人之间进行沟通与信息交换.那什么是计算机语言呢? 人与计算机之间进行信息交流沟通的一种 ...

  8. 从零开始学Java【JavaSE入门】

    文章目录 一.Java介绍 1.基本概念 2. 环境的配置 二.基础内容[Java语言基础] 1.标识符 2.关键字 3.字面值 3.变量 4.数据类型 1.整数型: 2.浮点型 5.运算符 6. 控 ...

  9. 1,Java语言基础-Java语言概述和必要计算机知识

    Java语言基础 Java语言概述 1,Java语言发展史 Java语言本质 Java是面向对象的高级语言,它是由c和c++发展而来. Java发展语言历史概述 Java 是由 James Gosli ...

  10. day01--java基础编程:计算机基础知识 ,java语言概述,java开发环境搭建,eclipse概述,创建简单java项目,JDK JRE JVM的关系,java开发中的命名规范,编程风格

    1 Day01–Java开发环境+HelloWorld 1.1 计算机基础知识 资料下载网址:刘沛霞 18600949004 code.tarena.com.cn tarenacode code_20 ...

最新文章

  1. nagios视频教程【原创】
  2. android 8 续航 评测,iPhone8续航能力测试 明显超过许多安卓手机
  3. 【转】关于TP3.2 验证码不显示的问题
  4. 机器视觉 · 视觉系统选型
  5. 微软一站式示例脚本库 — IT专业人士的省时利器
  6. TopFreeTheme精选免费模板【20130701.特别版】
  7. glob.glob() + os.path.join() :找到文件路径,拼接路径
  8. 软件测试—软件测试基础知识—用例模板
  9. SDK窗口中增加菜单 以及 对菜单做出相应的消息响应
  10. VNC+SSH相关应用
  11. 数据提交到服务器后,在中间层所做的修改,能及时反应到客户端吗?
  12. #879273#基于django/neo4j的通讯录与QQ好友关系管理系统
  13. 【排版】LaTeX公式编辑器-Texlive入门
  14. Sniffer和网络执法官软件助你维护网络
  15. VS2015静态库的使用(下)
  16. 单片机十字路口c语言程序,单片机十字路口交通灯控制 C 程序
  17. esp32 -Task watchdog got triggered的处理
  18. react中的 .d.ts
  19. 2021-11-12号-java面试题-北京
  20. 为什么吃饭的时候不说话

热门文章

  1. 初二计算机会考图操作,初二年级信息技术会考-考试大纲
  2. Mars-Android开发视频教程(全集)
  3. spss假设检验_SPSS进行组间差异比较及其两两比较——「杏花开生物医药统计」...
  4. 方程推导:二阶有源带通滤波器设计!(下载:教程+原理图+视频+代码)
  5. 匀速运动小车卡尔曼_平衡小车卡尔曼滤波算法使用心得
  6. workstation服务丢失 共享打不开 0x80070035
  7. 模式识别和机器学习的区别
  8. 国科大-模式识别与机器学习(计算机科学与技术学院)-习题解答参考
  9. 通信工程毕业干计算机网络,通信工程专业毕业后能做什么?
  10. FastDFS存储目录迁移方案