编译型和解释型

Java程序运行机制

  • 编译型

  • 解释型

到底什么是编译型、解释型?

从字面上来说编译和解释都有翻译的意思。但是唯一的区别就是"时机"不同!!!

举例:

一个中国人,一个美国人

他们俩之间国家的文字和语言都是不一样的,比如中国人写了一本小说,美国人想看怎么办?可以想到两种方式,第一种:美国人要想看中国人的书,他不懂,我们可以把中国人的这本书全部翻译成一本英文书,这时美国人就能看得懂这本书了。第二种:这个美国人有钱,他雇佣了一名翻译官,这个美国人看一段这位翻译官就给他翻译一段,跟着他的进度走。但是这位翻译官,某天不再了或者美国人又想回去看以前的章节,这时翻译官需要在翻译一遍。这两种方式都可以让这个美国人看完这本书。这两种方式都有好处,但是第一种美国人拿到了全部翻译成英文的这本书,这时这位中国人又更新了这本书的内容,所以这位美国人需要在花一份钱去买这本书。但是有一名翻译官,不管这位中国人何时更新这本书的内容,这名翻译官都可以及时翻译给美国人。

回到概念

编译型就是指将中文书直接翻译成英文版进行出售,在程序中的感觉就是它有一个负责翻译的程序,将我们自己写的源代码转换成计算机可执行的代码,这个过程称为编译型(compile),在程序中负责编译的程序称为编译器。

解释型就是指翻译官,我想读哪篇内容你就给我翻译哪篇内容,用一下编译一下,会导致性能损失。

编译型的执行速度更快,因为它把所有东西都编译好了,电脑只管去执行就好了,对操作系统要求比较低。所以一般操作系统都是编译型,还就是C语言、C++均为编译型。

解释型可以理解成一个网页,假如这个网页的脚本对速度的要求不高,比如Java,JavaScript,python。

程序运行机制

每日三道Java面试题(基础篇)

1.public,private,protected,默认的区别?

修饰符当前类同包子类其他包
public
protected ×
default × ×
private × × ×

类的成员不写访问修饰时默认位default,默认对于同一个包中的其他类相当于公开(public),对于不是同一个包中的其他类相当于私有(private)。

受保护(protected)对子类相当于公开,对不是同一包中的没有父子关系的类相当于私有。

Java中,外部类的修饰符只能是public或默认,类的成员(包括内部类)的修饰符可以是以上四种。

2.this和super有什么区别?

this:代表当前对象本身:

this(...):调用本类的构造方法;

this.成员变量:调用当前对象的成员变量(包括从父类继承的);

this.成员方法(...):调用本类的成员方法(包括从父类继承的);

super:代表当前对象的父类;

super(...):调用父类的构造方法;

super.成员变量:调用父类的成员变量;

super.成员方法(...):调用父类的成员方法;

3.Java中的运算符都有哪些?

Java中的运算符有以下几类:

运算符示例
算术运算符 + - * / % ++ --
关系运算符 == != > < >= <=
位运算符 & ^ ~ >> << >>>
逻辑运算符 && || !
赋值运算符 = += -= *= /= (%) = << = >> & = ^= |=
三目运算符 ?:

优先级从高到低排列:

类别操作符关联性
后缀 () [] . 从左到右
一元 i++ i-- 从左到右
一元 ++i --i + - ~ ! 从右到左
乘性 * / % 从左到右
加性 + - 从左到右
移位 >> >>> << 从左到右
关系 > >= < <= 从左到右
相等 == != 从左到右
按位与 & 从左到右
按位异或 ^ 从左到右
按位或 | 从左到右
逻辑与 && 从左到右
逻辑或 || 从左到右
条件 ?: 从右到左
赋值 = + = - = * = / = % = >> = << = & = ^ = | = 从右到左
逗号 , 从左到右
posted @   崔九八  阅读(123)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
点击右上角即可分享
微信分享提示