关于JAVA,特点,历史,编译式的语言&解释式的语言,什么是java?JDK?DOS?一次编译到处运行原理。
1.java语言的特点:
简单的;面向对象的;跨平台(操作系统)的(一次编译,到处运行);高性能的;
2.类名的首字母大写,方法小写;
3.历史:
java2(即java),为什么加个2呢?1998年12月,SUN公司发布了JDK1.2,开始使用“Java 2” 这一名称,目前我们已经很少使用JDK1.1版本,所以我们所说的Java都是指Java2。
java2包括:
- Java Card (应用在IC卡)
- J2ME (micro edition,精简版)(嵌入式系统开发设计)
- J2SE (standard edition,标准版)(定位于客户端程序的应用设计)
- J2EE (enterprise edition,企业版)(定位于服务器端的应用设计)
- 大名鼎鼎的java语言在诞生初期叫做oak,后来才更名为Java
4.编译式的语言&解释式的语言
编译式的语言是将原始程序代码通过编译器(compiler)转化成机器码,再直接执行机器码。优点:执行速度快,并可一次找出程序中不合法语言的部分(C,FORTRAN等)。
解释式的语言则是利用解释器(interpreter)对原始代码一边解释一遍执行。优点:易上手,利用起来方便(Basic等)。
Java较特殊,它必须先经过编译的程序,然后再利用解释的方式来执行。通过编译器,Java程序会被转换成与平台无关的(platform-independent)的机器码,称为字节码(byte-codes),通过Java解释器(interpreter)便可解释并执行Java的字节码。
编译器 解释器
app.java-------------->app.class---------------->执行
010111....
5.什么是java?
java是:
一种编程语言
一套开发工具
一个运行环境
6. JDK?
即:Java Development Kit(Java 开发工具包。可装多个JDK)
JDK包括:java运行环境——jre
java 的工具(java的编译器(javac.exe);java解释执行器(java.exe))
java类库(3600多个,常用的约150个)
7.安装JDK
设置>>环境变量>>Path变量>>输分号并输入“bin”所在目录。之后打开DOS,输入“java”测试是否成功
classpath 中的点表示当前目录。
8.DOS?
Disk Operating System 磁盘操作系统
常见的输入:
cd c:\Java 进入文件夹
进目录 D:javawork\lesson\ 可以:“cd ja*w*”
"cd le*"
javac app.java 编译 javac = java compile
javac Test.java(可以没有函数) ---> java Test(执行时需要有main函数,如下)
main函数:
public static void main(String [] args)(){
}
//这个main函数不做任何操作,可以在main函数中加“System.out.println("Hello");”
//println 会换行
//print 不会换行 ,亦可以用"\n”来换行
java app 执行字节码 (app.class)
- 将文件拖到运行对话框,就可以显示文件全名
9.一次编译到处运行原理
10. Test.java
---------------------------
class Test1{
}
class Test2{
}
---------------------------
则上述Test.java 编译之后将生成Test1.class 和Test2.class
有多个类将生成多个.class文件
若改为:
---------------------------
public class Test1{
}
class Test2{
}
---------------------------
则源文件的名字必须为Test1,加了public,就必须二者(源文件名和public修饰的类名)相同!所以这就决定了一个源文件中只能有一个public类!
关于JAVA,特点,历史,编译式的语言&解释式的语言,什么是java?JDK?DOS?一次编译到处运行原理。的更多相关文章
- java各历史版本官网下载
java各历史版本官网下载: http://www.oracle.com/technetwork/java/javase/archive-139210.html
- 【Java编程实战】Metasploit_Java后门运行原理分析以及实现源码级免杀与JRE精简化
QQ:3496925334 文章作者:MG1937 CNBLOG博客ID:ALDYS4 未经许可,禁止转载 某日午睡,迷迷糊糊梦到Metasploit里有个Java平台的远控载荷,梦醒后,打开虚拟机, ...
- Java基础笔记(1) 语言 JAVA的历史 Java的搭建环境
本文除了搭建是重点,其他的都当阅读小说一样去看就好了,不想看可以直接抓住重点,我会改变颜色勾出重点! 英语是人与人交流沟通的重要方式之一.JAVA:是人与计算机沟通交流重要方式之一.我们除了用java ...
- Java 发展历史
Java自1995诞生,至今已经20多年的历史. Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名.Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆 ...
- Java的历史及发展
Java之父:詹姆斯·高斯林 (James Gosling) Java自1995诞生,至今已经20多年的历史. Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名.Java语 ...
- java里的锁总结(synchronized隐式锁、Lock显式锁、volatile、CAS)
一.介绍 首先, java 的锁分为两类: 第一类是 synchronized 同步关键字,这个关键字属于隐式的锁,是 jvm 层面实现,使用的时候看不见: 第二类是在 jdk5 后增加的 Lock ...
- 为什么可以说Java语言是准动态语言?
什么是动态语言? 动态语言,是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化.比如JavaScript便是一个典型的动态语言. 除此之外如Ruby.Python ...
- Java的历史
1991 绿色计划 (Green Project) 1991 年 1 月 一个名为"Green Project"的项目启动.该项旨在为家用电器提供支持,使这些电器智能化并且能够彼此 ...
- [零] Java 语言运行原理 JVM原理浅析 入门了解简介 Java语言组成部分 javap命令使用
Java Virtual Machine 官方介绍 Java虚拟机规范官方文档 https://docs.oracle.com/javase/specs/index.html 其中以java8的为 ...
随机推荐
- 【xinsir】分享一个查找文件的脚手架
program.command('find <name>').action(name => { if (name) { inquirer .prompt([ { type: 'inp ...
- 关于ReentrantLock 中的lockInterruptibly方法的简单探究
今天在看Lock,都知道相比于synchronized,多了公平锁,可中断等优秀性能. 但是说到可中断这个特点,看到很多博客是这么描述的: “与synchronized关键字不同,获取到锁的线程能够响 ...
- Bootstrap布局基础
1.栅格系统(布局)Bootstrap内置了一套响应式.移动设备优先的流式栅格系统,随着屏幕设备或视口(viewport)尺寸的增加,系统会自动分为最多12列. 我在这里是把Bootstrap中的栅 ...
- 实现ARM——Linux的自动登录
在使用Linux系统嵌入式开发时,往往需要设备绕过Linux的登录系统使其自动启动,比如我们常用的SSH客户端等.网上确实有很多方法,不知道是因为我们的ARM9板子是私人订制的缘故还是什么原因,试了很 ...
- 详谈Generator
Generator究竟有什么样的作用呢???? 他是ES6提出的一个解决异步问题方案 先看一段代码, 感受一下generator函数和普通函数的区别 function* test(){ yield 2 ...
- 使用Typescript重构axios(三十一)——添加axios.all和axios.spread方法
0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...
- JavaScript如何友好的操作的cookie
1.前言 众所周知,在JS中处理cookie有些复杂,因为其操作cookie的接口相当不友好,即BOM的document.cookie属性.这个属性的独特之处在于它会因为使用它的方式不同而表现出不同的 ...
- PHP关于access_token失效问题
PHP关于access_token失效问题 有时候PHP设置了缓存 明明就是没有过期 但却提示失效这情况一般就是1 多个appid和secrete 生成的access_token互相覆盖了 所以 这种 ...
- Jmeter与压测相关概念
相关概念 RT(response time) 什么是RT? RT就是指系统在接收到请求和做出相应这段时间跨度 但是值得一提的是RT的值越高,并不真的就能说明我们的系统的吞吐量就很高, 比如说,如果存在 ...
- 重写(OverRide)/重载(Overload)
方法的重写规则 参数列表必须完全与被重写方法的相同: 返回类型与被重写方法的返回类型可以不相同,但是必须是父类返回值的派生类(java5 及更早版本返回类型要一样,java7 及更高版本可以不同): ...