【编程基础】聊聊如何学习Java——Java的特性

上一篇文章聊了学习编程可能会遇到的心里障碍和为什么学习Java,看了网友们的回复小编很激动,我会积极听取网友们的留言,在我以后的文章中改进。现在说Java语言的特性,每一种语言都有自己的特性,Java语言有哪些特性呢?

简单性:Java编程语言的风格十分接近C++语言,使用C++的人很容易就能掌握Java。Java语言抛弃了C++一些难以理解和学习的东西可以说是C++的一个纯净版。

面向对象:简单的说面向对象就是可以把一个事物看成(抽象)为一个类,它有一些属性和行为,它代表了一类事物的特性。这个特性让编程人员更多的精力是放到数据和对象上。

健壮性:Java的强类型机制、异常处理、垃圾自动收等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。

安全性:Java适用于网络和分布式环境,如果不安全那是不行的。Java语言在一开始就被设计成能够防范各种攻击,例如:禁止运行时堆栈移出,这是蠕虫等病毒常用的攻击手段。

结构中立(一次编译,处处运行):Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后只要有Java运行时系统就可以在许多处理器上运行。

可移植性:与C/C++不同,Java规范中明确了基本数据类型的大小,消除了在代码移植时主要令人头痛的问题。比如在Java中int型就是32位整数,在C/C++中有可能是16位整数也可能是32位整数。

解释型:Java程序在Java平台上被编译为字节码格式, 然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。

高性能:Java语言应为有垃圾回收等额外的开销所以会比C++慢一些,但是现在Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++,并且现在硬件性能过剩,Java对于性能的影响已经很小。

多线程:多线程技术可以充分利用硬件资源,给用户带来更好的用户体验和实时行为。

动态性:Java比C/C++更加具有动态性。Java程序需要的类能动态地被载入到运行环境,也可以通过网络来载入所需要的类。

没有“放诸四海而皆准”的语言,每一种语言的设计都是为了更好的解决人们实际编程中遇到的问题,没有任何一种语言能够在实际编程中完全胜任。Java语言的成功是把原本复杂的事情(联网,多线程等)让你很容易的实现,减少了在编程中遇到指针错误,提高了编程和调试的效率。

Java语言的这些特性你看完之后可能记不住太多,不过呢没关系,等你具体学习Java语言过程中慢慢体会。下一篇文章会讲解Java环境配置和编写一个Java小程序。

另外有网友说初学Java看什么书好,小编认为可以看看《Java编程思想》,网上PDF格式的很多,网友们可以搜索下载。编程有技巧,但是前期的基础部门是没有技巧的,就是要看书学习才能记住。

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-05-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏撸码那些事

【抽象那些事】不完整的抽象&多方面抽象&未用的抽象&重复的抽象

842
来自专栏算法与数据结构

PTA 数据结构 银行业务队列简单模拟

仅供参考,请勿粘贴 设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个...

1858
来自专栏java一日一条

编写高质量代码的思考

最近在看《代码大全》,可以说是一本软件开发的百科全书,特别厚,但是干货也很多。平时写代码,代码规范是一个最低的要求(很多老代码连最低要求都达不到),为什么要这样...

712
来自专栏CSDN技术头条

十五条有用的Golang编程经验

本文作者在很短的时间内就从对Golang一无所知到开发出真正的产品。在学习Golang的过程中,他总结出十五条编程经验以分享给读者。以下是译文。 ? 像许多其他...

2698
来自专栏Java学习网

Java虚拟机工作原理之JVM用到的3大计算机核心功能,重点是方法调用

JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模...

1023
来自专栏韩伟的专栏

框架设计原则和规范(一)

此文是《.NET:框架设计原则、规范》的读书笔记,本文内容较多,共分九章,将分4天进行推送,今天推送1-3章。 1. 什么是好的框架 2. 框架设计...

3475
来自专栏编程

编写高质量代码的思考

前言 最近在看《代码大全》,可以说是一本软件开发的百科全书,特别厚,但是干货也很多。平时写代码,代码规范是一个最低的要求(很多老代码连最低要求都达不到),为什么...

2206
来自专栏Python爬虫与算法进阶

爬虫之全站爬取方法

其实这个很好理解。比如说知乎,一个大V有100W粉丝,从这个大V出发,抓取粉丝的粉丝,一直循环下去。(可能是个死循环)

783
来自专栏精讲JAVA

Gof设计模式之七大设计原则(六)

前言 今天的设计原则重理论,举例子只能是文字形式,没法使用代码解释,希望大家可以多读几遍。真正体会到设计原则的好处。每一个设计原则,我都尽量用非...

20410
来自专栏iKcamp

翻译连载 | 第 10 章:异步的函数式(上)-《JavaScript轻量级函数式编程》 |《你不知道的JS》姊妹篇

原文地址:Functional-Light-JS 原文作者:Kyle Simpson-《You-Dont-Know-JS》作者 第 10 章:异步的函数式(上)...

1969

扫码关注云+社区