一. 绪

1.软件:按照特定顺序组织的计算机数据和指令的集合。

软件开发:借助开发工具与计算机语言制作软件

2.计算机语言:用于人与计算机通讯的语言

分为机器语言,汇编语言,高级语言

高级语言分为编译行语言和解释型语言

编译型语言:源程序编译成二进制代码的可运行程序,然后运行    源代码-->机器码         执行速度快,效率高,依赖编译器,跨平台性差

解释型语言:源程序翻译一句执行一句,知道结束    源代码-->中间代码(字节码文件)-->机器码     执行速度慢,效率低,依赖解释器,跨平台性好

通俗的讲,编译语言是在编译后可以直接运行,而解释语言的执行需要一个解释环境。java很特殊,java程序也需要编译,但是没有直接编译称为机器语言,而是编译称为字节码,然后用解释方式执行字节码。

——常用的DOS命令

打开DOS控制台的方式

1、开始—程序—附件—命令提示符

2、开始—运行—cmd—回车

3、win+r—cmd—回车

常用的DOS命令

d: 回车 盘符切换

dir(directory):列出当前目录下的文件以及文件夹

md (make directory) : 创建目录

rd (remove directory): 删除目录

cd (change directory)改变指定目录(进入指定目录)

cd.. : 退回到上一级目录

cd\: 退回到根目录

del (delete): 删除文件,删除一堆后缀名一样的文件*.txt

exit : 退出dos命令行

cls : (clear screen)清屏

——Java语言平台版本

J2SE  Java SE(Java 2 Platform Standard Edition)标准版

是为开发普通桌面和商务应用程序提供的解决方案,该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。

J2ME(Java 2 Platform Micro Edition)小型版

是为开发电子消费产品和嵌入式设备提供的解决方案。

J2EE(Java 2 Platform Enterprise Edition)企业版

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

——配置环境变量

我的电脑(右键)—>属性—>高级系统设置—>高级—>环境变量

——JAVA_HOME

系统变量自带是没有JAVA_HOME这个变量,变量值就是JDK安装的路径,需要自己编辑如下:

——PATH

PATH在系统变量中本来就是存在的,在最前面输入Bin的路径(用分号隔开其他路径),编辑如下:

$JAVA_HOME%\bin

C:\java\jdk\bin

——CLASSPATH

系统自带的变量是没有CLASSPATH的,需要添加

这是 Java 的环境配置,配置完成后,可以启动 Eclipse 来编写代码,它会自动完成java环境的配置。

注意:如果使用1.5以上版本的JDK,不用设置CLASSPATH环境变量,也可以正常编译和运行Java程序。

——测试JDK是否安装成功

1、"开始"->"运行",键入"cmd";

2、键入命令: java -version、java、javac 几个命令,出现以下信息,说明环境变量配置成功;

——Java语言的主要特性

1.跨平台性

软件不受计算机硬件和操作系统的约束,而在任意计算机环境下正常运行

在Java语言中, Java自带的虚拟机很好地实现了跨平台性。

2.面向对象

3.安全性(鲁棒性)

4.多线程

多线程是指允许一个应用程序同时存在两个或两个以上的线程,用于支持事务并发和多任务处理。 Java除了内置的多线程技术之外,还定义了一些类、方法等来建立和管理用户定义的多线程。

5.简单易用

——JREJDK

JRE(Java Runtime Environment    Java运行环境)

包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。

JDK(Java Development Kit    Java开发工具包)

JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。所以安装了JDK,就不用在单独安装JRE了。

其中的开发工具:编译工具(javac.exe)  打包工具(jar.exe)

       简单而言:使用JDK开发完成的java程序,交给JRE去运行。

——Java的跨平台性

因为有了JVM,所以同一个Java程序在三个不同的操作系统中都可以执行。这样就实现了Java程序的跨平台性。也称为Java具有良好的可移植性。

     Java语言是跨平台的,而JVM不是跨平台的。

——Bytecode(字节码文件)

字节码文件是经过编译器预处理过的一种文件,是JAVA的执行文件存在形式,它本身是二进制文件,但是不可以被系统直接执行,而是需要虚拟机解释执行,由于被预处理过,所以比一般的解释代码要快,但是仍然会比系统直接执行的慢。

机器码,完全依附硬件而存在,并且不同硬件由于内嵌指令集不同,即使相同的0 1代码 意思也可能是不同的~换句话说,根本不存在跨平台性~比如~不同型号的CPU,你给他个指令10001101,他们可能会解析为不同的结果。

我们知道JAVA是跨平台的,为什么呢?因为他有一个jvm,不论那种硬件,只要你装有jvm,那么他就认识这个JAVA字节码,至于底层的机器码,咱不用管,有jvm搞定,他会把字节码再翻译成所在机器认识的机器码。

——GC    垃圾回收器

        Java的内存管理实际上就是对象的管理,其中包括对象的分配和释放。

       对于程序员来说,分配对象使用new关键字;释放对象时,只要将对象所有引用赋值为null,让程序不能够再访问到这个对象,我们称该对象为“不可达的”,GC将负责回收所有“不可达”对象的内存空间。

gc会开启线程清理内存,不是及时回收的,根据内存效率,如果真的内存紧张了,才会回收,或者系统处于空闲状态,才会回收,所以说gc优先级较低,为的就是提高运行效率,程序员无法对其控制,由虚拟机控制,我们只能提出建议,但是人家不一定接受。

System.gc()/Runtime.gc()          //代码作用建议垃圾回收此处进行工作

什么是跨平台性?

通过Java语言编写的应用程序在不同的系统平台上都可以运行。

原理是什么?

只要在需要运行java应用程序的操作系统上,

先安装一个Java虚拟机(JVM Java Virtual Machine)即可。由JVM来负责Java程序在该系统中的运行。

为什么JDK中包含一个JRE呢?

其一,开发完的程序,总需要运行一下看看效果。

其二,也是最重要的,JDK中的开发工具其实都是java语言编写的应用程序,为了方便使用才打包成exe文件,如果没有JRE,那么这些工具是运行不了的。

转载于:https://www.cnblogs.com/wcoding/p/8526001.html

Core Java(一)相关推荐

  1. [Core Java® for the Impatient]重载Java2

    2019独角兽企业重金招聘Python工程师标准>>> Chapter 2. Object-Oriented Programming Set(Mutator Methods)方法改变 ...

  2. 如何开始 java core java

    .1 java 入门的经典书是那些.2 怎样开始学习java.3 java的开发工具是哪些? (what is the best fundamental books for java easy lea ...

  3. [读书笔记]Core Java: Volume I - Fundamentals Chapter 1

    Title: Core Java - Volume I Fundamentals Edition: Eleventh Edition Author: Cay S. Horstmann 文章目录 Pre ...

  4. [读书笔记]Core Java: Volume I - Fundamentals Chapter 8

    Title: Core Java - Volume I Fundamentals Edition: Eleventh Edition Author: Cay S. Horstmann 读书笔记:对原书 ...

  5. 文末赠书3本 | 盼了一年的Core Java最新版卷Ⅱ,终于上市了

    文章目录 盼了一年的Core Java最新版卷Ⅱ,终于上市了! Core Java基于Java 17全面升级 Core Java最新版卷Ⅱ现已上市 卷Ⅰ.卷Ⅱ有何不同? 如何阅读<Java核心技 ...

  6. core java文献翻译_外文翻译--Java技术介绍(适用于毕业论文外文翻译+中英文对照).doc...

    毕业设计(论文)外文资料翻译 学 院: 信息工程学院 专 业: 计算机科学与技术 姓 名: XXXXXXXXX 学 号: XXXXXXXXX 外文出处: Cay s.Horstmann Core Ja ...

  7. Core Java 8 读书笔记-Networking编程

    Core Java 8 读书笔记-Networking编程 作者:老九-技术大黍 原文:Core Java 8th Edition 社交:知乎 公众号:老九学堂(新人有惊喜) 特别声明:原创不易,未经 ...

  8. core java thinking in java_我看《Core Java 2》与《Thinking in Java》

    首先声明:我绝对不是权威人士.无论我的看法你是否同意,可以进行探讨,绝对反对攻击. 经常看到很多人问一些初学者应该看什么书的问题,也有很多高手告诉他们<Thinking in Java>这 ...

  9. Core Java For The Impatient-阅读笔记1.基本的编程结构

    Core Java For The Impatient 1.基本的编程结构 1.Key Points 在Java,所有的方法必须在类声明.非静态方法只能在所属类的对象上调用. 静态方法不是通过对象调用 ...

  10. java怎么重载两次_[Core Java® for the Impatient]重载Java2

    Chapter 2. Object-Oriented Programming Set(Mutator Methods)方法改变对象的状态,Get(accessor methods)方法则不: Java ...

最新文章

  1. 2015 AlBaath Collegiate Programming Contest(2月14日训练赛)
  2. sklearn识别单张自定义手写数字图片
  3. 【R】语言第四课----读取文件
  4. 计算机网络——数据链路层的概述
  5. 《画解算法》3. 无重复字符的最长子串【python3丨简单】
  6. 为什么程序员的社会地位不高?
  7. oracle类似sqlcmd工具,Oracle:是否有跟踪查询的工具,例如用于SQL Server的Profiler?...
  8. css怎么让div旋转不改变形状,旋转任意角度 如何让div旋转一定的角度
  9. [数分提高]2014-2015-2第2教学周第1次课
  10. YUI3学习(一)---入门
  11. html5 中秋博饼游戏,微信通用功能模块 中秋博饼V4.1.5 开源版
  12. java设计模式笔记
  13. MySQL条件查询IN和NOT IN左右两侧包含NULL值的处理方式
  14. OJ---腐烂的橘子
  15. 基于面向对象实现:猫抓老鼠小游戏 有一只猫和一只老鼠,当猫的体重是小于老鼠体重的5倍时,猫可以抓到老鼠。
  16. html5 图片处理 开源,AlloyImage 基于 HTML5 的专业级图像处理开源引擎 - 文章教程...
  17. win10的IE闪退及“启用或关闭windows功能”里没有IE选项
  18. Big Sur航拍动态壁纸4K高清
  19. layui的html页面支持转jsp吗,layui jsp
  20. CAN通信的BusOff功能

热门文章

  1. 浏览器打开html文件显示中文乱码解决方法
  2. Python 技术篇-使用time库获取秒级时间戳、毫秒级时间戳实例演示
  3. [YTU]_2803( 字符串中小写改大写)
  4. File类 读取文件
  5. rank--求矩阵的秩
  6. 判断三维坐标系旋转正方向的简单方法
  7. 微型计算机原理答案第四章,微机原理第四章习题答案.doc
  8. javascript实现二叉搜索树
  9. HZOJ string
  10. linux操作python