欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java基础:对Java的理解,

来源: javaer 分享于  点击 27498 次 点评:121

Java基础:对Java的理解,


在了解 Java 之前,我们得知道面向对象和面向过程的优劣。

面向过程

优势:类不需要实例化,所以性能要比面向对象高。对性能要求比较高的开发一般都采用面向过程语言,比如单片机、嵌入式开发、Linux/Unix 等。

劣势:没有面向对象易复用、易扩展、易维护。

面向对象

优势:面向对象具有封装、继承和多态的特性。与面向过程相比,更容易复用、扩展和维护。不仅如此,还能设计出低耦合的系统,使系统更加灵活,更容易维护。

劣势:由于类的实例化开销较大,所以,性能比面向过程低。

关于封装、继承和多态

封装

封装是把一个对象的属性私有化,然后为每个属性创建 getter、setter 方法供外界访问。

继承

继承是父子关系,以一个类作为父亲创建新类,新类又叫子类,子类拥有父类中非 private 的属性和方法,也可以拥有自己的属性和方法。通过继承,我们可以非常方便的复用代码。

多态

多态是指在编程时,程序不知道引用变量会指向哪个类的实例对象,更不知道该变量的方法调用是哪个类实现的方法,只有在程序运行时才能确定。

Java 两大特性

Java 本身是面向对象语言,具有面向对象的三大特点(封装、继承、多态),最显著的特性有两个方面,分别是“一次书写,到处运行。”和“垃圾收集“。

“一次书写,到处运行。”(Write once,run anywhere)

Java 通过字节码和 JVM 跨平台的抽象屏蔽了系统和硬件的细节。

“垃圾收集”(Garbage Collection)

Java 运行环境

除了要知道 Java 的特性之外,我们还得知道 Java 的运行环境,JDK 和 JRE。

JRE(Java Runtime Environment)

JRE 是 Java 的运行环境,包含了 JVM 和 Java 类库(核心类库、安全类库、第三方类库等),Java 命令和其他一些基础构建。但它不能用于创建新程序。

JDK(Java Development Kit)

JDK 可看作是 JRE 的一个超集,包含 JRE 的一切,还提供了更多的工具(辅助工具:jlink、jar、jdeps 等,编译器:javac、sjavac 等,诊断工具:jmap、jstack、jconsole等)。能够创建和编译程序。

Java 是编译与解释并存的语言

虽然 Java 是解释机制,但它是编译与解释并存的语言。

Java 代码从编译到运行的机制是:Java 代码经过 Javac 编译成 .class 文件,然后 JVM 类加载器加载 .class 文件,最后通过解释器逐行解释运行。照这么说法,Java 应该是解释执行才对,何来的编译呢?其实,这种方法的执行速度相对较慢,并且有些代码块经常被调用,在时间消耗上占了很大一部分。所以,存在 JIT(Just-In-Time)编译器,把经常运行的代码作为“热点代码”编译成本地平台相关的机器码,并进行各种层次的优化。所以,Java 是编译与解释并存的语言。

JDK 9 引入了新的编译模式 AOT,它预先把字节码编译成机器码。

如果需要了解 JIT 和 AOT,详细请观看JIT(动态编译)和AOT(静态编译)编译技术比较

Java 与 C++ 的区别

据闻,很多时候都会拿 Java 和 C++ 作比较,本人看来,每个语言都有它的特点,得看情况使用。

以上均为本人学习时的笔录总结,若有不当之处,请多多指教。

相关文章

    暂无相关文章
相关栏目:

用户点评