初识Java (一)

                                计算机语言的发展史

第一代 机器语言

众所周知,计算机诞生的初期是一台很庞大的机器,最初重达几十吨,但疫苗只能运算5000次的ENIAC

美国国防部用它来进行弹道计算。它是一个庞然大物,用了18000个电子管,占地170平方米,重达30吨,耗电功率约150千瓦,每秒钟可进行5000次运算,这在现在看来微不足道,但在当时却是破天荒。ENIAC以电子管作为元器件,所以又被称为电子管计算机。

这样的庞然大物,当时只能提供给科研,军事,航天等领域,是非常的昂贵稀少。

这样的庞然大物运行原理是离不开一个叫做打孔机的东西,因为计算机本身就只认识0和1这两个数字!

弊端:工作量巨大,bug非常多!

程序员们将用0和1数字变成的程序代码打在纸袋或者卡片上,1打孔,0不打孔;

第二代语言-汇编语言

助记符帮助了程序员提高了编写代码的效率;弊端:对于复杂的任务,汇编语言力不从心!

其中EM就代表了Educate Moth这个单词

第三代语言

出现了面向对象和面向过程的分支;而java属于面向对象的高级语言!

建议初学者先学java ,再学Python的时候你就觉得非常容易!总之,不同的语言之间,平分秋色!

  java简史

一个66岁的老头,在经历了失败项目Green项目之后,一杯来自爪哇岛的咖啡决定了java名称,作者借此寓意java语言能像这杯美味的咖啡被世人所喜爱!

java之父 James Gosling

java脱离了SUN公司,在Oracle公司的 “小步迭代、快速奔跑” 的方针下(2018-2021年期间,平均每半年更新一次版本)迅速成长,利用用户测试来不断地完善自己。

java隶属于Oracle公司,目前企业主流7和8为主!

JDK它又叫做java开发者工具(Java Development Kit),打一个比方的话,它就是一个提供开发者用的电脑软件,这个软件可以用来编程开发。他和jre是一个包含的关系,如果你不要进行编程开发,仅仅想运行由java编写的程序的话,那么使用安装jre就可以了。当然jre是包含在java开发者工具之中。所以你没有必要进行重复的安装。

软件下载地址   https://www.oracle.com/    需要注册登录后完成下载

在官网页面中选择开发者


选择java语言


选择Java SE文档

目前最新的java SE版本达到了16,下载地址:https://www.oracle.com/java/technologies/javase-jdk16-downloads.html

也可以利用国内平台https://www.jdkdownload.com/


根据自己实际情况来下载对应的版本



Java体系结构

大致分为SE/EE/ME,不同的结构包含的“类”不一样。

java开发大致要把EE和SE学明白。

初学阶段完成SE即可



                                        java核心机制

垃圾收集机制

垃圾收集机制


程序在运行时候,内存会为其开辟一个个空间使之运行;程序停止,空间将被清理释放

美丽的街道上,出现纸屑,烟头之类的可以称之为垃圾,这样的垃圾,需要及时的进行清理

程序员对java底层的垃圾收集器无法精准控制和干预;GC的自动回收提高了效率,减少内存泄露

java面试题

1.垃圾收集器有几种?

2.垃圾收集器底层原理剖析。

垃圾收集器算法和如何优化?



跨平台原理

业界严格意义上对跨平台,指的是编译后的文件是否可以跨平台!

java是一个解释型的语言 并且可以Compile once, run everywhere!

后缀为.java的文件称之为源文件,后缀为.class的文件称之字节码文件;这个字节码文件可以通过不同平台来进行执行!

JDK包含了虚拟机,编译执行功能,因此需要安装这个软件才具备java的开发环境!

Compile once, run everywhere


C语言编译需要不同平台的编译器,编译器与平台相关,编译后的可执行文件与平台相关

常用的DOS命令

win+R  单用户,单任务的操作系统,通常用于系统崩溃,调试的纯命令调试方式


切换D盘  D:   显示D盘内详细内容 dir


进入文件目录 cd  .和..代表了当前目录和上级目录


md 创建目录;反之删除目录就是rd
copy 复制文件的命令,反之删除文件就是del 



java环境准备

软件下载地址:链接:https://pan.baidu.com/s/1OCX5naiMpJrqX6g3RWGXMw

提取码:m1ut

复制这段内容后打开百度网盘手机App,操作更方便哦--来自百度网盘超级会员V6的分享


一路下一步进行安装,提示你安装jre也需要安装可更换安装的位置


验证方式1


验证方式2:java -version 查看版本



JDK & JRE

JDK:Java Development kit 

顾名思义:java开发包;编写java程序的程序员使用的软件,JDK自带JRE。

JRE:Java Runtime Enviroment

顾名思义:java运行环境;运行java程序的用户使用的软件。


作为初学者,先不谈集成工具,我们利用另外一个记事本工具---NOTEPAD ++链接:https://pan.baidu.com/s/1sZuKy5KwHdmNT0eMBf1u2Q

提取码:jsxe

复制这段内容后打开百度网盘手机App,操作更方便哦--来自百度网盘超级会员V6的分享

安装很简单,不做演示!

强大的集成工具IDEA

设置notepad++


设置-首选项-新建


设置-语言格式设置



相关软件的环境变量

Windows环境变量位置

在环境变量中,不只有path这个环境变量,还有很多的变量,而现在需要改动的就是这path的环境变量

我的电脑-属性-高级系统设置-环境变量

我列出了我电脑中path的环境变量中的具体值

在命令控制台执行打开notepad++程序

在没有指定路径下,默认在当前的C盘中是没有这个命令的!

因此,需要将notepad++这个命令所在的路径配置在Path中,系统会帮助你在所有路径中寻找


找到notepad++的执行路径

再寻找notepadd++时,首先系统会在你当前的路径下寻找,若是没有,就去path路径中去寻找notepad++命令,path中有则正常打开,没有输出错误提示!

以分号隔开,加入到path变量值!


重新打开控制命令台后



第一段java程序

这里我选择notepad++的记事本写一个新的java代码。

注意:类名和文件名必须保持一致,但是这张图是错误的,往下看


查看该文件的后缀是.java

源文件编译字节码文件

在编译和翻译过程中javac.exe和java.exe,都存在JDK中,很多java程序都存在这里面。

I:\JDK8\bin

修改JDK软件包环境变量:

path路径中添加I:\JDK8\bin;重启控制台

配置好JDK的环境变量后,进行源文件编译时,出现报错:

实践类的名字证明不能有空格

将类的名字和文件名字取消空格后进行编译 I:\javafile>javac Thefirstcode.java 成功编译!

I:\javafile>javac Thefirstcode.java

编译过程产生字节码文件

在相关路径下产生一个.class字节码文件

执行字节码文件,注意:请勿补全.class,要不然会报错!

代码显示:将双引号内的内容原样输出!

I:\javafile>java Thefirstcode

注意代码的结构,新手会遇到一些常见问题:

1.单词拼写错误;

2.源文件名和类名保持一致;

3.所有的标点符号须英文状态;

4.符号成对出现;

5.代码格式缩进习惯;(向后缩进快捷方式tab键,向前缩进shift+tab)

6.编译过程要带.java;执行过程不带.class

7.Java对大小写异常敏感。

8.一个源文件中可以存在多个类,但只能有一个类被public修饰,源文件的名字必须跟public修饰的那个类名保持一致


public class Thefirstcode{

        public static void main(String[] args){

                 System.out.println("这是我的第一个java代码!");

         }

}



类是公共的, 只能有一个类被public修饰。


源文件的名字必须跟public修饰的那个类名保持一致


多个类的类会生成自己独立的字节码文件


按照不同的字节码文件去分别执行,产生不同的结果,互相执行不冲突!



path环境变量扩展

classpath扩展

作用:专门针对java执行字节码文件而产生的环境变量,可以在任意路径下去执行(翻译).class文件。

默认情况的配置变量值是 .\(当前路径)在执行java的字节码文件时候,就会去这个配置的路径下寻找与之对应的字节码文件

系统默认自带了当前路径,只是隐藏显示,可根据自身需求定制路径


在执行java.exe的时候,会在classpath路径下配置的变量值下(这个变量值为.\当前路径)的Thefirstcode这个字节码文件

Java_Home 扩展

作用:例如,Tomcat启动时,会在系统环境变量中寻找java_home这个软件(默认是没有的)。

初学者阶段用不上,后期tomcat学习的时候涉及解决startup.bat启动闪退问题

Tomcat启动后不会出现闪退问题



JDK文档

类似一个索引字典,遇到不明白的地方可以查询这个文档

中文版JKD8-API


三个模块依次查询
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,496评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,407评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,632评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,180评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,198评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,165评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,052评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,910评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,324评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,542评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,711评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,424评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,017评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,668评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,823评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,722评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,611评论 2 353

推荐阅读更多精彩内容

  • 1. 计算机基本概念 1.1计算机组成 计算机由计算机硬件和计算机软件组成 计算机硬件:你的眼睛能看的见, 你的手...
    le_u阅读 348评论 0 1
  • 欢迎学习我制作的java版selenium web driver自动化测试教程。selenium web driv...
    马可吃菠萝阅读 641评论 0 2
  • 一:Java简介 1:什么是java java 是一种跨平台、面向对象的程序设计语言。用它编写的程序可以在任何在任...
    鹿白_tz阅读 406评论 2 5
  • Java语言的两种机制 1. Java的虚拟机机制(JVM) –虚拟机机制保证Java程序的跨平台特性。 2....
    IT_唐小探阅读 297评论 1 2
  • 本文主要用于初识Java,分别从由来、主要特点、简单的运行机制、Windows下环境变量配置、文件命名规则等方面...
    零点小时光阅读 281评论 0 0