Java入门学习笔记
前言2022年暑假。开始Java学习,至于学习Java这件事,也不算是给自己有挖了个坑,迟早都要学习。如今最热门的三大语言C、Java、python。Java也要学呀,python好像岗位比较少,C太难学了,指针还是没有搞明白。我也不想往那个方向发展。所以就Java了、Java之前略知一二,但是那个时候的自己不懂这些东西,连第一个程序都没有弄明白就放弃了、这个暑假恶补回来。
也有三年了。2019年暑假,我接触了python。刚开始这个不会,那个不会,四处问人。现在也用python写了一个项目,能看懂报错了。
准备 CMD常用命令- 盘符: :盘符切换
- dir : 查看当前路径下的内容
- cd目录:进入单级目录
- cd.. :回退到上一级目录
- cd 目录1目录2:进入多级目录
- cd :回退到盘符目录
- cls :清屏
- exit:推出命令提示符窗口
环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。
环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
引用《百度百科》
说到底想在任意一个路径下打开一个软件或者文件,那么就要把软件的路径配置到环境变量中
步骤:右击【此电脑】——【属性】——【高级系统设置】——【环境变量】——【系统环境变量】——【path】
Java介绍 JavaJava是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等 。
【——百度百科】
可以从这段描述中可以确定,Java是一门面向对象语言。
Java也是一门高级语言(这个好像不用写,大家都能明白)
C/C++里面是有指针这么一个概念的,在Java里面,不存在。所以可以看出来Java比C/C++简单。
Java也具有移植性,也就是说编写好的程序在Windows、Mac、Linux任何操作系统上不需要修改就可以运行。
然后还有一些特性,我将会在后面补充
Java是一门面向对象语言
面向对象那好,什么又是面向对象呢,我之前也是接触过Java,只知道类,有三个特性,继承、封装、还有一个是什么来着我忘记了。就此机会,我再了解一遍
面向对象(Object Oriented)是软件开发方法,一种编程范式。面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。
面向对象是相对于面向过程来讲的,面向对象方法,把相关的数据和方法组织为一个整体来看待,从更高的层次来进行系统建模,更贴近事物的自然运行模式。
【百度百科】
流传着这么一句话“万物皆对象”。什么意思呢,人可以看成是一个对象,狗可以看成是一个对象、汽车也是一个对象。
然后对象里面会有两个概念,属性和方法。之后就是三个特性,继承、封装、多态。
面向对象语音:C++、Java、python
Java平台Java又被划分成三大平台
- JavaSE:Java语言的标准版,用于桌面应用开发,是其他两个版本的基础
- JavaME:小型版,用于嵌入式电子设备或者小型移动设备。手机、电视、家电
- JavaSE:企业版,用于web网页开发,
-
面向对象
根据模板,创建对象
-
安全性
Java写出来的程序安全性比较高,漏洞少
-
多线程
同时做多件事情
-
简单易用
语法简单,好用
-
开源
免费
-
跨平台
Java程序可以在Windows、Mac、Linux任意操作系统上运行;
一次编译,到处运行(write once run anywhere)
-
1990年, Sun(Stanford University Network | 斯坦福大学网络公司)公司James gosling领导green计划
其打算用C++为微型设备(智能家电)开发一套系统。但是发现用C++开发项目进展不顺利。然后就编写了Oak语言
-
1992年,Green计划已经完成了新平台的部分功能,包括green操作系统、oak的程序设计语言、类库等,11月准备成立FirstPerson公司,但不久后倒闭
-
1994年,改造oak语言,同年秋天,完成第一个oak语言的网页浏览器webrunner。但是oak已被注册,改名Java
-
1995年,Sun公司发布Java
-
2009年,Sun 公司被 Oracle (甲骨文)公司收购,Java 也随之成为 Oracle 公司的产品。
发展Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 面向对象程序设计语言和 Java 平台的总称。由 James Gosling和同事们共同研发,并在 1995 年正式推出。
后来 Sun 公司被 Oracle (甲骨文)公司收购,Java 也随之成为 Oracle 公司的产品。
- 1995年,Java语言
- 1996年,Java1.0
- 2004年,Java5.0(这是Java的第一个大版本更新。)
- 2014年:Java8.0(这个是目前绝大数公司正在使用的版本。因为这个版本最为稳定。)
- 2018年9月:Java11.0
- 2021年9月:Java17.0
从1995到如今Java经历了很多个版本更新。在Java5以前,Java是一个一个小版本更新的;从Java9开始,每6个月将会有一次更新。可以看出快速的更新迭代使Java不会被时代淘汰。
因此Java也有两个版本:过渡版本与长期支持版本即正式版(LTS)
Java的运行原理既然跨平台Java是特性之一。那我们就了解一下Java的跨平台原理。
编程、编译、运行- 编程:我们自己写代码,同时注意Java的代码源文件后缀是:.java
- 编译:高级语言被翻译成机器语言,注意,Java编写的程序编译后文件后缀:.class
- 运行:计算机运行我们写的代码
当我们写好一个Java文件,命名为HelloWorld.java
然后通过Java编译器,就会产生一个字节码文件HelloWorld.class;注意这个不是.exe 文件,不可以直接运行。刚想起来昨天我想直接运行.class 文件,结果弹出来一个cmd,之后消失了。
然后注意这里与其他语言不同的是,我目前就接触过C和python,这两种语言会编译后直接执行,而Java不行。在编译和运行之间还有一个JVM(Java虚拟机)的过程。
JVM :Java的虚拟机,真正运行Java程序的地方。Java解释器是Java虚拟机的一部分。因此虚拟机读取与执行字节码文件
也就有Java是混合语言这么一说,有编译,有解释。
总结:Java不是直接运行在计算机上的,而是运行在Java虚拟机(jvm)上的。
Java跨平台既然知道了Java的运行方式,所以我们再说Java为什么可以跨平台
我们知道,写好一个Java文件,然后是交给虚拟机运行的。因此我在不同的操作系统下载不同的Java虚拟机就可以了。
Java是可以跨平台的,但是JVM不可以。
JER和JDKJava的运行必须要有JVM,还需要一个核心类库
JDK(Java Development kit):Java开发工具包
-
JVM(Java Virtual Machine):Java虚拟机,真正运行Java程序的地方
-
核心类库:Java事先定义好的
-
开发工具:javac:编译工具;java:执行工具;jdb:调试工具;jhat:内存分析工具…
JRE(Java Runtime Environment):Java的运行环境
- JVM
- 核心类库
- 运行工具:
JDK包含了JRE,JRE包含了VAM.
Java下载与环境配置 Java下载与安装-
通过官方网站获取JDK
http://www.oracle.com
-
JDK的安装目录介绍
目录名称 说明 bin JDK的各种工具命令。javac和java就放在这个目录。 conf JDK的相关配置文件。 include 一些平台特定的头文件。 jmods JDK的各种模块。 legal JDK各模块的授权文档。 lib JDK工具的一些补充JAR包。环境配置
说先说明一点,JDK下载完成后,在命令行输入Java会发现可以执行,并不是外部命令。然后
-
删除原先的环境变量
-
新建系统变量
变量名:JAVA_HOME
变量值:D:Program FilesJavajdk-17.0.3.1
变量值是你的JDK的文件夹目录。
-
编辑环境变量
新建%JAVA_HOME%bin
大功告成!这里应该是必须的,不能随意更改,我记得最开始接触Java的时候也是这么配置的。
第一个Java程序public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World!");
}
}
总结
这些算是Java的入门知识!
- Java是什么
- Java的发展
- Java的安装
- 执行原理
先了解这些,懂得了方向,然后就是持续学习,持续输出。
好了,我的学习笔记到此结束。
里面肯定有许许多多的bug,欢迎大家指出!毕竟这样成长更快。
也感谢大家可以看到这样,如果帮到了你,是我的荣幸。
谢谢大家!



