您的位置:首页 > 编程语言 > Java开发

java 笔录

2016-04-11 13:08 246 查看
(1)java新特点

1、提供了对内存的自动管理,程序员无需在程序中进行分配、释放内存,那些可怕的内存分配错误不会再打扰设计者了;

2、去除了C++语言中的令人费解、容易出错的“指针”,用其它方法来进行弥补;

3、避免了赋值语句(如a =3)与逻辑运算语句(如a = = 3)的混淆;

4、取消了多重继承这一复杂的概念。

Java语言的规范是公开的,可以在http://www.sun.com上找到它,阅读Java语言的规范是提高技术水平的好方法。

(2)java语言的关键特性

1.简洁有效

Java语言是一种相当简洁的“面向对象”程序设计语言。Java语言省略了C++语言中所有的难以理解、容易混淆的特性,例如头文件、指针、结构、单元、运算符重载、虚拟基础类等。它更加严谨、简洁。

2.可移植性

对于一个程序员而言,写出来的程序如果不需修改就能够同时在Windows、MacOS、UNIX等平台上运行,简直就是美梦成真的好事!而Java语言就让这个原本遥不可及的事已经越来越近了。使用Java语言编写的程序,只要做较少的修改,甚至有时根本不需修改就可以在不同平台上运行了。

3.面向对象

可以这么说,“面向对象”是软件工程学的一次革命,大大提升了人类的软件开发能力,是一个伟大的进步,是软件发展的一个重大的里程碑。

在过去的30年间,“面向对象”有了长足的发展,充分体现了其自身的价值,到现在已经形成了一个包含了“面向对象的系统分析”、“面向对象的系统设计”、“面向对象的程序设计”的完整体系。所以作为一种现代编程语言,是不能够偏离这一方向的,Java语言也不例外。

4.解释型

Java语言是一种解释型语言,相对于C/C++语言来说,用Java语言写出来的程序效率低,执行速度慢。但它正是通过在不同平台上运行Java解释器,对Java代码进行解释,来实现“一次编写,到处运行”的宏伟目标的。为了达到目标,牺牲效率还是值得的,况且,现在的计算机技术日新月异,运算速度也越来越快,用户是不会感到太慢的。

5.适合分布式计算

Java语言具有强大的、易于使用的联网能力,非常适合开发分布式计算的程序。Java应用程序可以像访问本地文件系统那样通过URL访问远程对象。

使用Java语言编写Socket通信程序十分简单,使用它比使用任何其它语言都简

单。而且它还十分适用于公共网关接口(CGI)脚本的开发,另外还可以使用Java小应用程序(Applet)、Java服务器页面(JavaServer Page,简称JSP)、Servlet等等手段来构建更丰富的网页。

6.拥有较好的性能

正如前面所述,由于Java是一种解释型语言,所以它的执行效率相对就会慢一些,但由于Java语言采用了两种手段,使得其性能还是不错的。

A、Java语言源程序编写完成后,先使用Java伪编译器进行伪编译,将其转换为中间码(也称为字节码),再解释;

B、提供了一种“准实时”(Just-in-Time,JIT)编译器,当需要更快的速度时,可以使用JIT编译器将字节码转换成机器码,然后将其缓冲下来,这样速度就会更快。

7.健壮、防患于未然

Java语言在伪编译时,做了许多早期潜在问题的检查,并且在运行时又做了一些相应的检查,可以说是一种最严格的“编译器”。

它的这种“防患于未然”的手段将许多程序中的错误扼杀在摇蓝之中。经常有许多在其它语言中必须通过运行才会暴露出来的错误,在编译阶段就被发现了。

另外,在Java语言中还具备了许多保证程序稳定、健壮的特性,有效地减少了错误,这样使得Java应用程序更加健壮。

8.具有多线程处理能力

线程,是一种轻量级进程,是现代程序设计中必不可少的一种特性。多线程处理能力使得程序能够具有更好的交互性、实时性。

Java在多线程处理方面性能超群,具有让设计者惊喜的强大功能,而且在Java语言中进行多线程处理很简单。

9.具有较高的安全性

由于Java语言在设计时,在安全性方面考虑很仔细,做了许多探究,使得Java语言成为目前最安全的一种程序设计语言。

尽管Sun公司曾经许诺过:“通过Java可以轻松构建出防病毒、防黑客的系统”,但“世界上没有绝对的安全”这一真理是不会因为某人的许诺而失灵验的。

就在JDK (JavaDevelopment Kit)1.0发布不久后,美国Princeton(普林斯顿)大学的一组安全专家发现了Java1.0安全特性中的第一例错误。从此,Java安全方面的问题开始被关注。不过至今所发现的安全隐患都很微不足道,而且Java开发组还宣称,他们对系统安全方面的Bugs非常重视,会对这些被发现的Bugs立即进行修复。

而且由于Sun公司开放了Java解释器的细节,所以有助于通过各界力量,共同发现、防范、制止这些安全隐患。

10.是一种动态语言

Java是一种动态的语言,这表现在以下两个方面:

A、在Java语言中,可以简单、直观地查询运行时的信息;

B、可以将新代码加入到一个正在运行的程序中去。

11.是一种中性结构

“Java编译器生成的是一种中性的对象文件格式。”也就是说,Java编译器通过伪编译后,将生成一个与任何计算机体系统无关的“中性”的字节码。

这种中性结构其实并不是Java首创的,在Java出现之前UCSDPascal系统就已在一种商业产品中做到了这一点,另外在UCSD Pascal之前也有这种方式的先例,在NiklausWirth实现的Pascal语言中就采用了这种降低一些性能,换取更好的可移植性和通用性的方法。

Java的这种字节码经过了许多精心的设计,使得其能够很好地兼容于当今大多数流行的计算机系统,在任何机器上都易于解释,易于动态翻译成为机器代码。

(3)java虚拟机(JVM)

Java虚拟机(JVM)是可运行Java代码的假想计算机。只要根据JVM规范描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行

(4)java架构的三个方面

J2EE(Java 2 Platform Enterprise Edition) 企业版,是以企业为环境而开发应用程序的解决方案。

J2SE(Java 2 Platform Stand Edition) 标准版,是桌面开发和低端商务应用的解决方案。

J2ME (Java 2 Platform Micro Edition) 小型版,是致力于消费产品和嵌入式设备的最佳解决方案。

(5)java程序的两种形式

JAVA程序分为两种形式:一种是网页上使用的Applet程序(Java小程序),另一种是Appliction程序(即:Java应用程序)。在所有的Java Application中,所有程序都是从public static void main(String args[]),开始运行的。

(6)Java程序比较特殊,它必须先经过编译,然后再利用解释的方式来运行。

使用classpath可以指定class的运行路径,命令行输入setclasspath=“”。

(7)java中保留的关键字

abstract boolean break byte case catch charclass continue default do double else extend false final finally float for ifimplement import instanceof int interface long native new null package privateprotected public return short static synchronized super
this throw throwstransient true try void volatile while

(8)如果将一个类声明成public,则它的文件名称必须取成这个类的名称才能顺利编译

main()在Java里是一个相当特殊的method,它一定要声明成public,使得在类的其它地方皆可调用到它,且main()method没有返回值,所以在它之前要加上void关键字

(9)变量及常量

Java的基本数据类型

数据类型 字节 表示范围

long(长整数) 8 -9223372036854775808~ 9223372036854775807

int(整数) 4 -2147483648~ 2147483647

short(短整数) 2 -32768~ 32767

byte(位) 1 -128~ 127

char() 1 0~ 255

boolean() 1 布尔值只能使用true或false

float() 4 -3.4E38(-3.4×1038) ~3.4E38(3.4×1038)

double() 8 -1.7E308(-1.7×10308)~1.7E308(1.7×10308)

(10)数组

(11)方法的重载

方法的重载就是在同一个类中允许同时存在一个以上的同名方法,只要它们的参数个数或类型不同即可。

(12)对象的概念理解

面向对象程序设计是将人们认识世界过程中普遍采用的思维方法应用到程序设计中。对象是现实世界中存在的事物,它们是有形的,如某个人、某种物品;也可以是无形的,如某项计划、某次商业交易。对象是构成现实世界的一个独立单位,人们对世界的认识,是从分析对象的特征入手的。

对象的特征分为静态特征和动态特征两种。静态的特征指对象的外观、性质、属性等;动态的特征指对象具有的功能、行为等。客观事物是错综复杂的,但人们总是从某一目的出发,运用抽象分析的能力,从众多的特征中抽取最具代表性、最能反映对象本质的若干特征加以详细研究。

人们将对象的静态特征抽象为属性,用数据来描述,在Java语言中称之为变量;人们将对象的动态特征抽象为行为,用一组代码来表示,完成对数据的操作,在Java语言中称之为方法,。一个对象由一组属性和一组对属性进行操作的方法构成。

(13)类的概念理解

将具有相同属性及相同行为的一组对象称为类。广义地讲,具有共同性质的事物的集合就称为类。

在面向对象程序设计中,类是一个独立的单位,它有一个类名,其内部包括成员变量,用于描述对象的属性;还包括类的成员方法,用于描述对象的行为。在Java程序设计中,类被认为是一种抽象数据类型,这种数据类型,不但包括数据,还包括方法。这大大地扩充了数据类型的概念。

类是一个抽象的概念,要利用类的方式来解决问题,必须用类创建一个实例化的类对象,然后通过类对象去访问类的成员变量,去调用类的成员方法来实现程序的功能。这如同“汽车”本身是一个抽象的概念,只有使用了一辆具体的汽车,才能感受到汽车的功能。

一个类可创建多个类对象,它们具有相同的属性模式,但可以具有不同的属性值。Java程序为每一个类对象都开辟了内存空间,以便保存各自的属性值。

面向对象的程序设计有三个主要特征,如下:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: