您的位置:首页 > 职场人生

java基础面试准备

2018-02-26 23:44 232 查看

java基础面试准备

1、程序开发方法有哪些?

  在软件开发领域有两种主流的开发方法:结构化开发和面向对象开发。早期一般都是结构化开发语言,随着软件开发技术的发展,人们发现面向对象可以提供更好的可重用性、可扩展性和可维护性。

  结构化开发的语言有:C、Basic、Pascal等。

  面向对象开发的语言有:C++、Java、C#等。

2、程序的三种基本机构

  顺序结构、选择结构、循环结构。

3、结构化开发介绍

  结构化程序设计方法主张按功能分析系统需求。主要原则概括为自顶向下、逐步求精、模块化等。

  结构化程序设计里最小单元是函数,每个函数负责完成一个功能。主函数负责把系统中所有函数串起来。

  其局限性如下:

设计不够直观,与人类习惯思维不一致。采用结构化程序分析、设计时,开发者需要将客观世界模型分解成一个个功能,每个功能用于完成一定的数据处理。

适应性差,可扩展性不强。由于结构化设计采用自顶向下的设计方式,所以当用户的需求发生改变,或需要修改现有的实现方式时,都需要自顶向下地修改模块结构,这种方式的维护成本相当高。

4、面向对象开发介绍

  面向对象强调直接以现实世界中的事物(即对象)为中心来思考,根据这些事物的本质特点,把它们抽象地表示为系统中的类,作为系统的基本构成单元。这使得软件系统的组件可以直接映像到客观世界,并保持客观世界中事物及其相互关系的本来面貌。

  面向对象程序设计里,最小的程序单元是类。

  成员变量(状态数据)+方法(行为)=类定义

5、面向对象和面向过程比较

  面向对象比面向过程的编程粒度要大:面向对象的程序单位是类;而面向过程的程序单位是函数(方法),因此面向对象比面向过程更简单、易用。

  比如组装一台电脑,使用大粒度组件(如主板、内存条、硬盘等)比小粒度组件(如二极管、三极管等)要更容易。

6、面向对象基本特征

  面向对象具有三个基本特征:封装、继承和多态。

  封装:将对象的实现细节隐藏起来,通过公用方法来暴露该对象的功能。

  继承:子类继承父类后,作为一种特殊的父类,将直接获得父类的属性和方法。

  多态:子类对象可以直接赋给父类变量,但运行时,依然表现出子类的行为特征,这意味着同一个类型的对象在执行同一个方法时,可能表现出多种行为特征。

7、区别基于对象和面向对象

  “基于对象”也使用了对象,但是无法利用现有的对象模板产生新的对象类型,继而产生新的对象。也就是说,“基于对象”没有继承的特点,自然也就没有多态。例如JavaScript就是基于对象的,它使用一些封装好的对象,调用对象的方法,设置对象的属性;但是它们无法让开发者派生新的类,开发者只能使用现有对象的方法和属性。。

  判断一门语言是否是面向对象的,通常可以使用继承和多态来加以判断。

8、Java特点

跨平台

  所谓的跨平台性,是指软件可以不受计算机硬件和操作系统的约束而在任意计算机环境下正常运行。这是软件发展的趋势和编程人员追求的目标。之所以这样说,是因为计算机硬件的种类繁多,操作系统也各不相同,不同的用户和公司有自己不同的计算机环境偏好,而软件为了能在这些不同的环境里正常运行,就需要独立于这些平台。

  而在Java语言中, Java自带的虚拟机很好地实现了跨平台性。 Java源程序代码经过编译后生成二进制的字节码是与平台无关的,但是可被Java虚拟机识别的一种机器码指令。 Java虚拟机提供了一个字节码到底层硬件平台及操作系统的屏障,使得Java语言具备跨平台性。

面向对象

  面向对象是指以对象为基本粒度,其下包含属性和方法。对象的说明用属性表达,而通过使用方法来操作这个对象。面向对象技术使得应用程序的开发变得简单易用,节省代码。Java是一种面向对象的语言,也继承了面向对象的诸多好处,如代码扩展、代码复用等。

多线程

  多线程在操作系统中已得到了最成功的应用。多线程是指允许一个应用程序同时存在两个或两个以上的线程,用于支持事务并发和多任务处理。 Java除了内置的多线程技术之外,还定义了一些类、方法等来建立和管理用户定义的多线程。

安全性

  安全性可以分为四个层面,即语言级安全性、编译时安全性、运行时安全性、可执行代码安全性。语言级安全性指Java的数据结构是完整的对象,这些封装过的数据类型具有安全性。编译时要进行Java语言和语义的检查,保证每个变量对应一个相应的值,编译后生成Java类。运行时Java类需要类加载器载入,并经由字节码校验器校验之后才可以运行。 Java类在网络上使用时,对它的权限进行了设置,保证了被访问用户的安全性

简单易用

  Java源代码的书写不拘泥于特定的环境,可以用记事本、文本编辑器等编辑软件来实现,然后将源文件进行编译,编译通过后可直接运行,通过调试则可得到想要的结果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: