【Java零基础入门篇】第 ① 期 - Java概述

简介: Java零基础入门


博主:命运之光
专栏:JAVA入门
JAVA.gif

学习目标
1.理解JVM、JRE、JDK的概念;
2.掌握Java开发环境的搭建,环境变量的配置;
3.掌握Java程序的编写、编译和运行;
4.学会编写第一个Java程序,掌握Java程序的结构。


1.1Java语言简介

简介

Java是一门高级的面向对象的程序设计语言。使用Java语言编写的程序是跨平台的,从PC机到移动设备,到处都运行着Java开发的程序和游戏。Java程序可以在任何计算机、操作系统以及支持Java的硬件设备上运行。
在这里插入图片描述

Java的起源

请添加图片描述

请添加图片描述

Java技术的发展阶段

第一阶段——萌芽期

时间 :1991年;
地点:美国Sun公司(美国加利福利亚);
主要设计者: James Gosling(詹姆斯•高斯林);
产品:Oak语言。

第二阶段——完善期

时间:1995年—1998年;
1995年Java语言面世, 推出JDK1.0
1998年发布JDK 1.2,随之将Java 分为J2SEJ2EEJ2ME

第三阶段——平稳期

时间:1999年—2004年;
产品:JDK 1.3 ~ JDK 1.4;
Java已成为最为流行的网络编程语言,并且在移动计算和智能制造等领域得到了广泛应用。

第四阶段——发展期

时间 :2005——现在;
产品 :2005年推出JDK 1.5;
2009年Oracle甲骨文74亿美元收购Sun,获得Java版权;
2014年,甲骨文发布Java SE 8.0(JDK1.8)

Java技术体系平台

Java SE(Java Standard Edition)标准版(整个技术架构的核心
)

支持面向桌面级应用(如Windows下的应用程序)的Java平台,提供了完整的Java核心API,此版本以前称为J2SE。

Java EE(Java Enterprise Edition)企业版

是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如:Servlet 、Jsp等,主要针对于Web应用程序开发。版本以前称为J2EE。

Java ME(Java Micro Edition)小型版

支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,此版本以前称为J2ME。

Java语言的特点

🍓特点一:面向对象

  • 两个基本概念:类、对象;
  • 三大主要特性:封装、继承、多态;

🍓特点二:健壮性
吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制;

🍓特点三:跨平台性

  • 跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere
  • 原理:只要在需要运行 java 应用程序的操作系统上,先安装一个Java虚拟机 (JVM Java Virtual Machine)即可。由JVM来负责Java程序在该系统中的运行。

Java代码的处理过程

程序开发需要经过 编写源码 ——>编译 ——> 运行 的过程。
请添加图片描述

如果从编程语言的角度而言,分为两种类型的编程语言:编译型、解释型

编译型源程序(C程序)——> 编译链接——>可执行程序EXE——> 运行——> 操作系统
Java属于两种类型的合集:
源文件——>编译——>字节码文件(二进制文件)——>解释/运行——>解释器——> 操作系统


1.2搭建Java开发环境

Java的开发环境

Java开发运行环境是指Java开发工具和相应的硬/软件环境,目前主流是Oracle公司的JDK(java开发工具包 Java Development Kit) 。
为了提高Java程序的开发效率,目前有很多集成开发工具(IDE),包括Eclipse、MyEclipse、JBuilder、JDeveloper、JCreator等,使用这些集成开发工具能帮助我们敏捷快速地开发应用系统。

JDK相关概念

JDK
Java Development kit 即 java开发工具包),用于开发Java程序
JRE
(Java Runtime Environment 即java运行环境),用于运行Java程序
JVM
(Java Virtual Machine 即Java虚拟机),将Java程序翻译成机器语言,交给底层操作系统执行,并保证运行效果,实现JAVA程序跨平台性

在这里插入图片描述

🍓JDK 、JRE、JVM关系
JDK = JRE + 开发工具库(例如javac编译工具等)
JRE = JVM + Java SE标准类库

Java语言运行机制

在Java中所有的程序都是在 JVM(Java Virtual Machine)上运行的。 JVM是在一台计算机上由软件或硬件模拟的 虚拟计算机
  • 对于不同的平台,有不同的虚拟机;
  • 只有某平台提供了对应的java虚拟机,java程序才可在此平台运行;
  • Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行”。

在这里插入图片描述

Java编译环境
在这里插入图片描述


1.3Java程序的运行

文本编辑工具介绍

  • 文本编辑工具

记事本在这里插入图片描述

EditPlus
在这里插入图片描述

*TextPad
NotePad++*

准备工作

注:在编写代码之前,先确认系统中“文件扩展名”选项被勾选,如图所示。
在这里插入图片描述

“HelloWorld”程序

步骤一:编写

  • 选择最简单的编辑器:记事本; (也可以使用NotePad++)
  • 敲入代码;
  • 将文件保存成HelloWorld.java,这个文件是存放java代码的文件,称为源文件

在这里插入图片描述

步骤二:编译

  • 有了java源文件,通过编译器将其编译成JVM可以识别的字节码文件;
  • 命令提示符窗口(win+R)中操作。
Dos常用命令
1、转换盘符
D: 回车 //转到D盘;
C:回车 //转到C盘;
2、cd 目录名 // 进入目录名所表示的目录(即文件夹)
cd myjava //进入myjava目录;
cd .. //退回到父目录;
cd \ //退回到根目录;
cd myjava\a\b //进入到myjava下的a下的b目录;
cd命令只能在同一个盘符内进行目录转换,跨盘符不行,需要先转换盘符
3、exit //退出命令行窗口
  • 进入Java源文件目录下,通过javac编译工具对HelloWorld.java文件进行编译; 格式: javac HelloWorld.java
  • 如果程序没有错误,没有任何提示,在当前目录下会出现一个HelloWorld.class文件,该文件称为字节码文件,也是可以执行的java的程序。

在这里插入图片描述
在这里插入图片描述

步骤三:解释程序,对生成的Hello.class在JVM上执行。

通过运行工具java.exe对字节码文件进行执行;

<font color="blue">格式:</font> <font color="pink"> java   HelloWorld     </font>            (不写扩展名)
![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/3fb9d0d03cd64af2b0f121ff8b097a00.png)

在这里插入图片描述

关于CLASSPATH

执行java程序的过程

在这里插入图片描述
1.CLASSPATH主要指的是类的运行路径,启动JVM后,JVM在运行时需要通CLASSPATH加载所需要的类。
*2.默认情况下,CLASSPATH是指向当前目录(命令行窗口所在的目录)中的类。(因而一般需要进入到程序所在路径下执行程序)
(JDK6.0后一般情况下无需配置CLASSPATH)*

HelloWorld代码解释

public class HelloWorld {
    public static void main( String[] args ) {
        System.out.println("hello,world!");
    }
}
如果有public,则文件名必须与类名“HelloWorld”相同,否则可以不同
这是定义一个名字叫做HelloWorld的类,类是java当中所有代码的一个基本组织单位
第二行是固定写法,基本不能改变,这是程序启动的起点

第三行开始,就是程序执行的内容,这一行是一个输出语句、打印语句,就是在屏幕当中显示一行信息英文的双引号中间就是显示的文本内容

1.Java源文件以“java”为扩展名。源文件的基本组成部分是类(class),如本例中HelloWorld类。
2.Java应用程序的执行入口是main()方法。它有固定的书写格式:

<font color="red">***public static void main(String[] args)  {...} 或
public static void main(String args[]) {…..}***</font>

3.Java语言严格区分大小写。
4.Java方法由一条条语句构成,每个语句以“;”结束。
5.大括号都是成对出现的,缺一不可。
6.一个源文件中最多只能有一个public类。其它类的个数不限,如果源文件包含一个public类,则文件名必须按该类名命名

良好的编程风格

  • 🍍正确的注释和注释风格🍍
使用文档注释来注释整个类或整个方法;
如果注释方法中的某一个步骤,使用单行或多行注释;
  • 🍍正确的缩进和空白🍍
使用tab键,实现缩进;
运算符两边习惯性各加一个空格,比如:2 + 4 * 5
  • 🍍块的风格🍍
行尾风格
次行风格

在这里插入图片描述
在这里插入图片描述

集成开发环境介绍

  • Java集成开发环境(IDE)
*JBuilder
NetBeans
Eclipse
MyEclipse
IntelliJ IDEA *

Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是提供了一个基础的底层支持,而后针对于不同的编程语言都会提供有相应的插件支持。
Eclipse属于绿色免安装软件,解压缩后就可以直接使用(运行 Eclipse.exe程序)。

下载网址:http://www.eclipse.org/downloads/packages/,根据自己的操作系统选择相应的Eclipse版本,本书使用的是windows 64位版

在这里插入图片描述

在这里插入图片描述
Eclipse窗口介绍

在这里插入图片描述


1.4常见错误总结

🍎
在这里插入图片描述

🍓 错误原因:
  • 源文件名不存在或者写错;
  • 当前路径错误;
  • 后缀名隐藏问题;

🍎🍎
在这里插入图片描述

🍓 错误原因:
  • 类文件名写错;
  • 类文件不在当前路径下(如上不在D盘根目录);

🍎🍎🍎
在这里插入图片描述

错误原因:声明为public的类应与文件名一致,否则编译失败;
在这里插入图片描述
编译失败,注意错误出现的行数,再到源代码中指定位置改错


🍓🍓总结🍓🍓

  • JDK,JRE,JVM的关系;
  • 环境变量path配置及其作用; Java程序的编写、编译、运行步骤:

在这里插入图片描述

  • Java程序编写的规则;
  • 在配置环境、编译、运行各个步骤中常见的错误以及解决方法。
相关文章
|
1月前
|
存储 安全 Java
从入门到精通:Java Map全攻略,一篇文章就够了!
【10月更文挑战第17天】本文详细介绍了Java编程中Map的使用,涵盖Map的基本概念、创建、访问与修改、遍历方法、常用实现类(如HashMap、TreeMap、LinkedHashMap)及其特点,以及Map在多线程环境下的并发处理和性能优化技巧,适合初学者和进阶者学习。
50 3
|
11天前
|
监控 安全 Java
Java中的多线程编程:从入门到实践####
本文将深入浅出地探讨Java多线程编程的核心概念、应用场景及实践技巧。不同于传统的摘要形式,本文将以一个简短的代码示例作为开篇,直接展示多线程的魅力,随后再详细解析其背后的原理与实现方式,旨在帮助读者快速理解并掌握Java多线程编程的基本技能。 ```java // 简单的多线程示例:创建两个线程,分别打印不同的消息 public class SimpleMultithreading { public static void main(String[] args) { Thread thread1 = new Thread(() -> System.out.prin
|
17天前
|
Java 大数据 API
14天Java基础学习——第1天:Java入门和环境搭建
本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
|
23天前
|
存储 安全 Java
🌟Java零基础-反序列化:从入门到精通
【10月更文挑战第21天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
63 5
|
20天前
|
安全 Java 调度
Java中的多线程编程入门
【10月更文挑战第29天】在Java的世界中,多线程就像是一场精心编排的交响乐。每个线程都是乐团中的一个乐手,他们各自演奏着自己的部分,却又和谐地共同完成整场演出。本文将带你走进Java多线程的世界,让你从零基础到能够编写基本的多线程程序。
32 1
|
27天前
|
Java 数据处理 开发者
Java多线程编程的艺术:从入门到精通####
【10月更文挑战第21天】 本文将深入探讨Java多线程编程的核心概念,通过生动实例和实用技巧,引导读者从基础认知迈向高效并发编程的殿堂。我们将一起揭开线程管理的神秘面纱,掌握同步机制的精髓,并学习如何在实际项目中灵活运用这些知识,以提升应用性能与响应速度。 ####
44 3
|
28天前
|
Java
Java中的多线程编程:从入门到精通
本文将带你深入了解Java中的多线程编程。我们将从基础概念开始,逐步深入探讨线程的创建、启动、同步和通信等关键知识点。通过阅读本文,你将能够掌握Java多线程编程的基本技能,为进一步学习和应用打下坚实的基础。
|
1月前
|
开发框架 IDE Java
java制作游戏,如何使用libgdx,入门级别教学
本文是一篇入门级教程,介绍了如何使用libgdx游戏开发框架创建一个简单的游戏项目,包括访问libgdx官网、设置项目、下载项目生成工具,并在IDE中运行生成的项目。
50 1
java制作游戏,如何使用libgdx,入门级别教学
|
30天前
|
存储 安全 Java
从入门到精通:Java Map全攻略,一篇文章就够了!
【10月更文挑战第19天】本文介绍了Java编程中重要的数据结构——Map,通过问答形式讲解了Map的基本概念、创建、访问与修改、遍历方法、常用实现类(如HashMap、TreeMap、LinkedHashMap)及其特点,以及Map在多线程环境下的使用和性能优化技巧,适合初学者和进阶者学习。
45 4
|
29天前
|
Java
[Java]Socket套接字(网络编程入门)
本文介绍了基于Java Socket实现的一对一和多对多聊天模式。一对一模式通过Server和Client类实现简单的消息收发;多对多模式则通过Server类维护客户端集合,并使用多线程实现实时消息广播。文章旨在帮助读者理解Socket的基本原理和应用。
23 1
下一篇
无影云桌面