java基础

第一章 JAVA开篇
本章大纲


课程引入
Java语言概述
开发环境搭建
Java入门案例
开发工具选择
基本概念

本章重点


掌握Java安装及环境变量配置
掌握Java执行过程
掌握JDK&JRE&JVM
了解Java编码规范
熟练编写第一个Java入门程序
熟练使用注释、关键字

  1. 课程引入

1.1 JAVA是什么?
Java是一门面向对象的编程语言,可以编写应用程序application(简称app),Java是由C++语言编写,其中吸收了C++的各种优点,补足了C++的缺陷。
1.2 为什么选择JAVA?
简单易学
就业前景好
应用广泛
Java非常活跃
1.3 如何学好JAVA?
4多1坚持
多想、多练习、多看(周边)CSDN - B站、多分享
坚持到底。(个行业有多牛人这,我们一直再追逐他们的脚步,但是不要灰心,只要像傻子一样坚持,我们终究牛*)
1.4 我们的未来能做什么?

  1. Java语言概述

2.1 语言介绍
2.1.1 语言分类
在计算机领域,语言我们设定为大类别。
自然语言 :
就是人和人之间交流的语言 ,例如: 汉语 英语 法语 日语 …
计算机语言:
人和机器之间交流的语言,例如: c c++ python java …

2.1.2 Java语言发展历史
Java之父:
James Gosling [詹姆斯 高斯林] 加拿大人
1995年 在sun公司工作期间创造了Java
2010年 sun被Oracle收购之后从sun离职
2011年 加入谷歌,同年8月份从谷歌离职,之后加入Roboitics 任首席架构师

Java语言是美国sun(Stanford University Network)公司,在1995年推出的高级的编程语言,在但是之初是为了在各种移动设备上进行程序开发的语言,之后2009年被Oracle公司收购,目前Java语言属于Oracle公司.
Java语言早起名字Oak(橡树),后期更名为Java。

2.1.3 Java语言版本迭代
JDK 就是一款软件, 功能, 编译和运行Java代码,最早起1996年推出了JDK第一个版本; 直到现在2021年9月份, 目前JDK版本到了17
版本一览表:

特殊说明:
目前在市场上,互联网公司开发以jdk7 & jdk8为主,因为这两个版本比较稳定,所以我们在教学的过程中使用 jdk8版本为主.这样才符合企业的标准.
2.1.4 Java语言平台版本
JavaME(Java Micro edition): Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。在早些年的时候,比如我们的诺基亚手机和摩托罗拉手机上的小游戏,在打开的时候就会出现Java的标志,其实那些程序就是使用JavaME技术开发的.目前已经被 安卓和ios 所替代

JavaSE(Java Standard Edition): Java SE 包含了支持 Java Web 服务开发的类,主要用于客户端图形界面软件的开发,目前客户端软件开发已经不是互联网的主要潮流,逐渐退出历史舞台,但是JavaSE技术是JavaEE&JAVAME开发技术的基础,必须要先学习JavaSE,也就是第一阶段的内容.(Java基础)

JavaEE(Java Enterprise Editon): 用于服务器、桌面、嵌入式环境和实时环境中使用的 Java 应用程序。主要用于互联网 B/S 架构软件的开发,所谓的B/S架构就是 浏览器/服务器 架构,目前是Java开发的主流.我们在就业的时候,都是从事JavaEE网站的开发. (网站开发)

Java是否可以做客户端? awt 、Swing(包)

c/s 架构 : 客户端/服务器(JavaSE早期就是做这个的。) – 英雄联盟 wow 下载客户端
b/s架构 : 浏览器/服务器(现在流行的) – 某团、某宝 、4399 、大天使之剑 – 打开浏览器输入网站

2.1.5 Java语言特点
开源(开放源代码)性: 开源表示免费, 开放源代码 github gitee(推荐)码云
面向对象性: Java语言中非常重要一种编程理念, 万物皆对象
跨平台性: Java语言的使用可以无视操作系统之间的差异性 — 只要能安装就能运行。
编译性: Java代码设计完成之后, 需要经过编译过程, 将java文件编译成.class文件,java文件称为源文件, 计算机无法直接识别java文件, 因此编译成.class字节码文件, 为了让计算机可以识别java语言,从而运行。
动态性: java代码在执行过程中, 可以修改内容

2.1.6 Java语言应用领域
移动互联网开发

网站

大数据

其他如:手机应用后台、微型程序、游戏平台…

2.2 JAVA语言的跨平台实现原理
特点: 一次编译,到处运行
解释: Java语言代码编译一次,代码就可以在不同操作系统中运行,并且还能得到相同的运行结果
Java语言的使用可以无视操作系统之间的差异性
JVM : Java虚拟机,理解成一个软件,模拟计算机实现过程, 一个虚拟机就像是一个小型的计算机,主要功能就是可以运行标准的Java代码, JVM虚拟机为Java代码营造出相同运行环境

自带一个运行环境,Java虚拟机JVM。

2.3 JDK&JRE&JVM【笔试题】
简介:
JVM (Java Virtual Machine): Java虚拟机,是运行所有Java程序的假想计算机,是Java程序的运行环境,是Java 最具吸引力的特性之一.我们编写的Java代码,都运行在 JVM 之上.
JRE (Java Runtime Environment): 是Java程序的运行时环境,但是单独的JVM虚拟机不能自己运行,需要支持JVM运行的功能代码,JRE包含 JVM 和运行时所需要的 核心类库。
核心类库:很多功能代码, 代码太多, 为了便于管理, 因此将代码放置到一个库中管理.
JRE = JVM + JVM运行时需要的核心类库(支持、依赖)功能;
Runtime表示运行的概念
JDK (Java Development Kit): 是Java程序开发工具包,包含 JRE 和开发人员使用的工具,例如 javac.exe(编译器) 和 javadoc.exe(可以自动为Java的代码生成说明文档)
JDK : 全称Java开发工具包, 主要功能就是可以进行Java代码的编译(编写), 还有运行
JDK = JRE + 开发时需要工具包;

三个组件之间的关系

  1. JAVA开发环境搭建

3.1 DOS命令的介绍和使用

计算机语言中,人机的两大交互方式,人与机器沟通也分为两种
CLI:命令行界面 — dos窗口
GUI:图形化界面 — windows系统

DOS 是一个早期的操作系统,是一个纯命令行操作系统,不便于使用,现在已经被windows系统取代,对于开发人员我们在开发过程中有些情况需要掌握一些常用的dos命令.

DOS操作窗口的打开方式

第一种方式: windows + r --> 输入cmd --> 回车

当前登录的用户文件夹的根目录

第二种方式:在本地磁盘任何一个文件夹下输入cmd

在哪个文件夹下输入cmd就定位到哪个文件夹

第三种方式: 在资源浏览器地址栏 ctrl+E 中输入 cmd
默认定位到了System32文件夹下,这个文件夹下有cmd.exe

常用的DOS命令

切换磁盘 命令: 盘符: 例如 D:

进入文件夹 cd 文件夹名

返回上一层目录 cd …

3.2 JDK下载&安装&卸载
3.2.1 下载
www.oracle.com

3.2.2 安装

依然默认安装

检查安装程序中是否有Java

从安装路径中查找Java是否安装到指定目录

到此我们安装成功了!!!
3.2.3 验证
通过命令测试当前Java环境是否可以正常使用
查看版本命令:java -version

测试Javac工具和Java工具是否正常使用

执行Javac命令

原因:我们还需要给Java配置一个环境变量。
环境变量:虽然我们已经成功安装了JDK但是JDK的工具在特定的一些程序上执行命令的时候还是不能找到Java的精准的安装位置,所以会出现命令不识别问题
那么需要我们在计算机中配置一个精准的Java的环境变量位置,这样再任何地方都能够使用Java命令。

3.2.4 卸载

3.3 环境变量配置
如何打开配置环境变量的位置: 我的电脑->属性->高级系统设置->高级->环境变量

点开环境变量配置

我们需要先看一下path里面包含哪些内容,path是配置环境变量的核心。

国际标准方式:
说明: 我们需要先创建一个JAVA_HOME的变量信息,然后将这个变量信息直接引用到path路径上。

接下来将JAVA_HOME的环境变量引入到path中 — 编辑path

保存关闭之后,重新打开dos窗口,再次测试javac

成功!!!!!

懒人方式:

测试 javac — 依然正常运行。

  1. 入门案例

4.1 程序编写
1、首先创建一个 HelloWorld.txt 文件。
2、修改 后缀名为 .java 类型文件,变成 HelloWorld.java
3、用系统自带的记事本软件打开 HelloWorld.java 文件,书写程序内容
javac.exe 编译
java.exe运行
2 1javac.exe 编译2java.exe运行

注意: 在电脑系统中需要打开显示后缀名的选项
public class HelloWorld {
public static void main (String args[]) {
System.out.print(“hello world …”);
}
}
5 1public class HelloWorld {2 public static void main (String args[]) {3 System.out.print(“hello world …”);4 }5}
4.2 编译和运行

核心原则:将Java文件通过Javac命令编译成.class文件,然后再通过Java命令执行!!!!!!
1、当前文件类打开dos并定位到当前Java类文件的位置

2、通过Javac.exe工具将.Java文件编译成.class文件
命令:javac 文件名.java
.java文件是Java类文件,这个类文件是给程序员编辑的,但是Java并不能直接运行这个文件,Java的底层需要使用的是一个叫.class的字节码文件
所以程序人员写完程序之后需要将.java编译成.class再交给虚拟机运行,只不过目前我们初学时手动操作,以后全自动。
2 1.java文件是Java类文件,这个类文件是给程序员编辑的,但是Java并不能直接运行这个文件,Java的底层需要使用的是一个叫.class的字节码文件2所以程序人员写完程序之后需要将.java编译成.class再交给虚拟机运行,只不过目前我们初学时手动操作,以后全自动。

3、 这时我们就可以通过java.exe这个工具将我们的程序执行 命令: java 文件名 (注意此时不需要后缀)

小结:执行过程是先创建一个.Java的文件,并编写java程序,完成之后通过javac命令将.java文件编译成.class文件,最后通过java命令运行这个.class文件。
4.3 案例详解
关于类的解释

关于方法的解释

关于执行语句的解释

课堂练习
创建一个Student类,通过主函数方法打印 student name is zhangsan
课后作业:下次上课之前能够不参考任何代码手写一个Java类并运行!!!!!!
4.4 格式规范及常见问题
1.格式规范(行业内部规则)
(1)在左大括号前面,要加一个空格
(2)在左大括号后面,要换行、缩进
(3)右大括号要和本层次的代码对齐
(4)运算符两侧,要加上空格
(5)不同的代码段之间,要加上空行

2.代码调试和常见问题
(1)类名与文件名需要保持一致
(2)非法字符问题。Java中的符号必须英文格式的。
(3)大小写问题。Java语言对大小写敏感(区分大小写)。例如 System String 两个单词的S都是大写
(4)在系统中显示文件的扩展名,避免出现HelloWorld.java.txt文件。
(5)编译命令(Javac)后的java文件名需要带文件后缀.java
(6)运行命令(java)后的class文件名(类名)不带文件后缀
(7) Java代码中, 括号必须成对出现({},(),[])

  1. JAVA开发工具

5.1 常用工具
1、系统自带的记事本软件
优点: 不用安装 系统自带
缺点: 没有提示 没有高亮显示 没有行号等功能
2、第三方记事本软件
Editplus nodepad++
优点: 有少量提示 高亮显示代码 有行号
缺点: 提示功能不够强大,不利于构建大型的项目
3、集成开发平台
eclipse : 开源免费 可以集成各种插件,但是对插件的兼容性不好
MyEclipse: 收费 自动集成了项目开发的插件, 是对Eclispe 的二次开发, 软件臃肿
idea: 收费 目前最流行的java开发平台, 可以集成各种插件,功能强大,同时对电脑的硬件性能要求较高.

5.2 EditPlus软件的安装和使用

5.2.1 EditPlus的基本配置
创建类文件: java文件

改变文件内容字体大小
ctrl + 鼠标滑轮向上滚动 : 字体变大
ctrl + 鼠标滑轮向下滚动 : 字体变小
2 1ctrl + 鼠标滑轮向上滚动 : 字体变大2ctrl + 鼠标滑轮向下滚动 : 字体变小
匹配括号成对出现

去掉代码中备份文件

配置代码的编译命令

配置java命令

配置完毕的效果

测试

  1. 基本概念

6.1 注释
注释作用
伪代码–
1、将代码置为无效状态
2、为代码添加解释说明 可以对代码进行解释说明【开发中有30%部分为注释内容】
3、帮助开发者记录编程思路辅助开发【梳理代码思路,伪代码!!】
4、帮助开发者迅速的定位错误代码,进行排错【代码调试】
注意 : 代码中的注释内容, 是属于无效代码, 不会影响代码的运行结果
1伪代码-- 21、将代码置为无效状态 32、为代码添加解释说明 可以对代码进行解释说明【开发中有30%部分为注释内容】43、帮助开发者记录编程思路辅助开发【梳理代码思路,伪代码!!】54、帮助开发者迅速的定位错误代码,进行排错【代码调试】6注意 : 代码中的注释内容, 是属于无效代码, 不会影响代码的运行结果
public class S0101 {
//主函数
public static void main(String args []){
//System.out.print(“hello”);
System.out.print(“哈喽!!!”);
}

//1.记录步骤  2.伪代码   3.  4. 

}
x 1public class S0101 {2 //主函数3 public static void main(String args []){4 //System.out.print(“hello”);5 System.out.print(“哈喽!!!”);6 }7 8 //1.记录步骤 2.伪代码 3. 4. 910}
分类

单行注释:
使用一行区域来书写解释说明的内容
格式:// 注释内容
特点:不可以换行

多行注释:
使用多行区域来书写解释说明的内容
格式:/* 注释内容 */
特点:可以换行

文档注释:
格式: /** 注释内容 */
目前文档注释不使用,暂时不讲解,后面专门学习

x 1单行注释:2 使用一行区域来书写解释说明的内容3 格式:// 注释内容4 特点:不可以换行5 6多行注释:7 使用多行区域来书写解释说明的内容8 格式:/* 注释内容 /9 特点:可以换行1011文档注释:12格式: /* 注释内容 /13目前文档注释不使用,暂时不讲解,后面专门学习14
/
*

  • 注释的测试类

  • @Author it-sunwz

  • @Date 2021-11-14 20:14:47
    */
    public class S0102 {

    /**

    • 程序的主函数,也是入口方法

    • @param String[]

    • @return void
      */
      public static void main(String[] args){

      //print默认打印不换行 println 换行
      System.out.println(“Hello World!”);
      // 第一种:单行注释,一个//只能注释一行,//行后内容全部不生效

      /*
      第二种方式:多行注释 - 注释中间代码全部不生效
      System.out.println(“Hello World!”);
      System.out.println(“Hello World!”);
      System.out.println(“Hello World!”);
      2021/11/14
      */

      /**

      • 第三种方式:文档注释,一般用于给类和方法写说明使用
      • 如果程序写法比较规范,那么类和方法的文档注释必须有
      • 程序开发完成之后,我们可以通过Java工具提取说明文档,内容就是文档注释
        */

    }
    }

x 1/**2 * 注释的测试类3 * @Author it-sunwz4 * @Date 2021-11-14 20:14:475 */6public class S0102 {78 /**9 * 程序的主函数,也是入口方法10 * @param String[]11 * @return void12 */13 public static void main(String[] args){14 15 //print默认打印不换行 println 换行16 System.out.println(“Hello World!”);17 // 第一种:单行注释,一个//只能注释一行,//行后内容全部不生效18 1920 /*21 第二种方式:多行注释 - 注释中间代码全部不生效22 System.out.println(“Hello World!”);23 System.out.println(“Hello World!”);24 System.out.println(“Hello World!”);25 2021/11/1426 */2728 /**29 * 第三种方式:文档注释,一般用于给类和方法写说明使用30 * 如果程序写法比较规范,那么类和方法的文档注释必须有31 * 程序开发完成之后,我们可以通过Java工具提取说明文档,内容就是文档注释32 */3334 }35}36

6.2 关键字
java中提前定义好的并且赋予了特殊的含义和功能的英文单词 这样的单词在java中总计有50个,但是在用的 有goto和const两个单词没有使用,只有48个。所以被称之为预留关键字【预留字】
在定义类、方法、常量、变量等自己的东西,命名一定不要使用关键字,否则会出现意想不到的错误。

https://baike.baidu.com/item/java%E5%85%B3%E9%94%AE%E5%AD%97/5808816

定义类和方法使用的关键字:
class: 类的意思,声明当前文件是一个Java类
import: 导入的意思,在Java中我们可以使用import导入其他文件类
public: 公开的意思,声明一个公开大家都可以访问使用的类或者方法
static: 静态的意思,也有非静态的。 表示当前声明一个静态的方法 — 后续讲解。
void : 无返回
5 1class: 类的意思,声明当前文件是一个Java类2import: 导入的意思,在Java中我们可以使用import导入其他文件类3public: 公开的意思,声明一个公开大家都可以访问使用的类或者方法4static: 静态的意思,也有非静态的。 表示当前声明一个静态的方法 — 后续讲解。5void : 无返回
关于数据类型的关键字:
byte: 字节
short: 短整型数据
int: 整型
long: 长整型
float: 单精度浮点类型
double: 双精度浮点类型
char: 字符类型
boolean: 布尔类型
8 1byte: 字节2short: 短整型数据3int: 整型4long: 长整型5float: 单精度浮点类型6double: 双精度浮点类型7char: 字符类型8boolean: 布尔类型

  1. 本章总结
    Java发展史 - James-Golings 1995创建 1996年JDK1.0 2010年sun被oracle收购
    JDK安装
    JDK组成 JDK=JRE(JVM+JVM运行的依赖)+JAVA工具包

public class S0101 {
public static void main(String args []){
System.out.print(“哈喽!!!”);
}
}

// 单行
// 多行
/
*/ 文档注释
13 1Java发展史 - James-Golings 1995创建 1996年JDK1.0 2010年sun被oracle收购2JDK安装3JDK组成 JDK=JRE(JVM+JVM运行的依赖)+JAVA工具包45public class S0101 {6 public static void main(String args []){7 System.out.print(“哈喽!!!”);8 }9}1011// 单行12// 多行13/ */ 文档注释

学java,每天学,不学拿叉车叉着你学

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值