【精品】java实用教程第5讲初识面向对象(可编辑.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《【精品】java实用教程第5讲初识面向对象(可编辑.ppt》由会员分享,可在线阅读,更多相关《【精品】java实用教程第5讲初识面向对象(可编辑.ppt(31页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、Java实用教程第5讲初识面向对象第5讲 初识面向对象面向过程意在分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候依次调用这些函数。面向对象是把构成问题的事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。面向对象技术是一种以对象为基础,以事件或消息来驱动对象执行处理的程序设计技术,它具有封装性、继承性及多态性三大特点。5.1 面向过程程序设计与面向对象程序设计面向过程程序设计与面向对象程序设计的根本不同在于:面向过程程序设计中属性和行为是分开的,而面向对象程序设计中属性和行为含在单个对象中。面向对象程序设计的有三大
2、特点:(1)封装性封装机制将数据和代码捆绑到一起,避免了外界的干扰和不确定性。它同样允许创建对象。简单的说,一个对象就是一个封装了数据和操作这些数据的代码的逻辑实体。在一个对象内部,某些代码和(或)某些数据可以是私有的,不能被外界访问。通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。(2)继承性继承是可以让某个类型的对象获得另一个类型的对象的属性的方法。它支持按级分类的概念。例如,知更鸟属于飞鸟类,也属于鸟类。就像图5中描绘的那样,这种分类的原则是,每一个子类都具有父类的公共特性。(3)多态性多态是面向对象程序设计的另一个重要概念
3、。多态的意思是事物具有不同形式的能力。举个例子,对于不同的实例,某个操作可能会有不同的行为。这个行为依赖于所要操作数据的类型。比如说加法操作,如果操作的数据是数,它对两个数求和。如果操作的数据是字符串,则它将连接两个字符串。5.2 创建新的数据类型创建新的数据类型就必须借助关键字class,新类型的名字必须遵循Java中标示符的命名规则,如:class NewTypeName /类的主体新类型在命名时,尽量保持Java的风格,即首字母要大写,如果名字有多个单词组成的话,每个单词的首字母都要大写,尽量做到“见名知意”。类名后面的一对花括号“”之间的部分是类体,类体中可以定义数据域和动作。Java
4、使用变量表示对象的属性,使用方法表示对象的行为,如:/Circle.javapublic class Circle double radius=2.0;void setRadius(int newRadius)radius=newRadius;double getRadius()return radius;double getArea()return radius*radius*Math.PI;名为Circle的类已经完成,现在可以用它来创建对象了,如:Circle c=new Circle();5.3 类的成员类是创建对象的模板,是同一类对象的抽象,对象的属性和行为都应该在类中得到体现。所以
5、,类中定义了两种类型的成员:成员变量和成员方法5.3.1 成员变量根据有无static修饰符修饰,成员变量又分为类变量(静态变量)和实例变量。(1)有static修饰的变量称为类变量,也叫静态变量。此种类型的变量存储于内存中的静态存储区,在类被加载时得到初始化,即使没有任何对象被创建。(2)没有static修饰的变量称为实例变量。此种类型的变量存储于堆中对象的空间内,在创建对象时被初始化。:class GraduatedStudent int age;static int grade;在Student类中,age为实例变量,属于对象所有,存储于每个对象的空间中,所以每个对象可以由不同的年龄。g
6、rade为类变量,所有使用GraduatedStudent类创建的对象共同所有,所有对象都有共同的年级。5.3.2 成员方法同类变量和实例变量的区别相同,根据有无static修饰符修饰,成员方法又分为类方法(静态方法)和实例方法。(1)有static修饰的方法称为类方法,也叫静态方法。即使没有任何对象被创建,也可以被调用。(2)没有static修饰的方法称为实例方法。只有对象被创建后,才能通过对象的引用来调用。5.4 构造方法创建对象时,关键字new需要配合构造方法一起使用。构造方法是一种特殊的方法,其作用就是初始化,即为对象的属性赋值。构造方法有以下特点:(1)构造方法的名字必须与类的名字相
7、同;(2)构造方法没有返回类型;(3)构造方法可以重载。现在再回到Rectangle类,可以使用多种方法创建Rectangle类的对象,即为Rectangle定义多个构造方法。5.5 通过引用访问对象要给新创建的对象在内存(堆)中分配空间,它们可以通过引用类型的变量来访问5.5.1 引用类型和引用类型变量在Java中的引用类型,是指除了基本的变量类型之外的所有类型,所有的类型在内存中都会分配一定的存储空间(形参在使用的时候也会分配存储空间,方法调用完成之后,这块存储空间自动消失)。基本的变量类型只有一块存储空间,这块空间分配在stack中;而引用类型有两块存储空间:一块在stack中,用于存放
8、引用类型的变量,另一块在heap中用于存放对象一个类是程序员自己定义的类型,就是一种引用类型,任何使用该类声明的变量都可以引用(指向)该类的一个实例。如:Rectangle r1=new Rectangle();r1为Rectangle类型的引用类型变量,它可以指向Rectangle类的实例。5.5.2 引用类型变量和基本类型变量的区别每个变量都代表一个“存储值”的内存地址。变量的声明实际上就是告诉编译器这个变量可以存储什么类型的值。对于基本类型的变量,其内存储的值是基本类型值。而引用类型变量其内存储的是对象在堆中的存储地址值。例如变量a为基本类型,而b为引用类型,定义如下:int a=10;
9、Rectangle b=new Rectangle();则,a和b的区别如图5.2所示:图5.2 基本类型变量和引用类型变量区别图类的成员变量也可以是引用类型的,如Pupil类中的name:public class Pupil String name;int age;上例中的name只是被声明,并没有被赋值,当创建Pupil的对象时,name被初始化为null。类的成员变量也可以是引用类型的,如Pupil类中的name:public class Pupil String name;int age;上例中的name只是被声明,并没有被赋值,当创建Pupil的对象时,name被初始化为null。5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 java 实用教程 初识 面向 对象 编辑
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内