java面向对象语言
1. 如何理解java中的面向对象谢谢!
java语言就是一门编程语言,用来解决现实当中各种复杂的业务逻辑问题。
Java 在特定情况下解决了特定平台间的跨平台问题,解决方法是把 Java 本身做成一个平台。然后,只要把 Java 平台本身部署到目标机器,那么应用理论上就可以用了,这个方法对不同 flavor 的 Unix 系统之间的程序移植带来了很多好处。——这所有的好处都来自服务器领域。——Java 虚拟机把这些“型号不同但实质上等价”的服务器虚拟成一致的。但 Java 无法解决那些“实质上就不一样的设备”之间的兼容性。
Java 最初的目标,甚至都不是为了把 Windows 移植到 Linux,而是为了让不同 flavor 的 Unix 之间能够做到二进制兼容。但无论如何,不同的 Unix 本质上都是 Unix,他们之间实现二进制兼容相对比较现实。但诸如 Linux/Windows/OSX 这样本质区别很大的平台,二进制兼容很大程度上只是过于美好的幻想。他们在一些系统核心调用方面可能存在完全不同的机制,以至于你为了选择一个所有系统可用的方式必须牺牲最优效率。
2. 请问Java是面向对象语言么
是,但是不是因为所有java的文件是类就是,而是因为她完全支持面向对象的三大特性,封装、继承、多态,尤其是多态,很多所谓的半面向对象如VB6.0和delphi7.0等,就是对多态支持不好,不能很好的表达抽象,你要记住面向对象玩的就是抽象!
3. java面向对象的特征有哪些
众所周知,Java是一种面向对象性的语言。而面向对象,Obeject Oriented,是一种编程术语。面向对象是当今软件开发方法的主流方法之一,他是把数据以及对数据的操作放在一起,作为一个相互依存的整体,就是我们所说的对象。那么Java面向对象的特征又是什么?下面就一起来看看Java面向对象的四大特征:
特征一:抽象
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象不打算了解全部问题,而是选择其中的一部分,暂时不用部分细节。抽象包括两个方面:过程抽象;数据抽象。
特征二:继承
继承是一种连接类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类的继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且派生类可以修改或者增加新的方法使之更适合特殊的需要。
特征三:封装
封装是指将客观事物抽象成类,每个类对自身的数据和方法实行保护。类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
特征四:多态
多态是指允许不同类的对象对同一消息做出响应。多态包括参数化多态和包含多态。多态性语言具有灵活、抽象、行为共享、代码共享等优势,很好地解决了应用程序函数同名问题。Java中实现多态主要是方法的重载和方法的覆盖。
4. JAVA中什么是面向对象
在java的学习中,面向对象应该是java技术的重中之重,虽然在生活中没有对象可以面对,但在技术中还是要一直接触面对对象,而且不可避免。今天对面向对象来了一个小总结。
一、面向对象的特点:
1、将复杂的事情简单化。
2、面向对象将以前的过程中的执行者,变成了指挥者。
3、面向对象这种思想是符合现在人们思考习惯的一种思想。
过程和对象在我们的程序中是如何体现的呢?过程其实就是函数;对象是将函数等一些内容进行了封装。
二、匿名对象使用场景:
1、当对方法只进行一次调用的时候,可以使用匿名对象。
2、当对象对成员进行多次调用时,不能使用匿名对象。必须给对象起名字。
三、在类中定义其实都称之为成员。成员有两种:
1、成员变量:其实对应的就是事物的属性。
2、成员函数:其实对应的就是事物的行为。
所以,其实定义类,就是在定义成员变量和成员函数。但是在定义前,必须先要对事物进行属性和行为的分析,才可以用代码来体现。
四、类中怎么没有定义主函数呢?
注意:主函数的存在,仅为该类是否需要独立运行,如果不需要,主函数是不用定义的。主函数的解释:保证所在类的独立运行,是程序的入口,被jvm调用。
五、成员变量和局部变量的区别:
1、成员变量直接定义在类中;局部变量定义在方法中,参数上,语句中。
2、成员变量在这个类中有效;局部变量只在自己所属的大括号内有效,大括号结束,局部变量失去作用域。
3、成员变量存在于堆内存中,随着对象的产生而存在,消失而消失;局部变量存在于栈内存中,随着所属区域的运行而存在,结束而释放。
六、构造函数和一般函数有什么区别呢?
1、两个函数定义格式不同。
2、构造函数是在对象创建时,就被调用,用于初始化,而且初始化动作只执行一次。
一般函数,是对象创建后,需要调用才执行,可以被调用多次。
七、创建一个对象都在内存中做了什么事情?
1、先将硬盘上指定位置的Person.class文件加载进内存。
2、执行main方法时,在栈内存中开辟了main方法的空间(压栈-进栈),然后在main方法的栈区分配了一个变量p。
3、在堆内存中开辟一个实体空间,分配了一个内存首地址值。new
4、在该实体空间中进行属性的空间分配,并进行了默认初始化。
5、对空间中的属性进行显示初始化。
6、进行实体的构造代码块初始化。
7、调用该实体对应的构造函数,进行构造函数初始化。
8、将首地址赋值给p ,p变量就引用了该实体。(指向了该对象)