现在的位置: 首页 > 综合 > 正文

面向对象的理解

2013年03月01日 ⁄ 综合 ⁄ 共 984字 ⁄ 字号 评论关闭

面向对象要经过完整的分析、设计之后才可以进行开发

面向对象的思维:做为这个问题来说,1、在这个问题中应该有哪些类 哪些对象 2、每种类和对象应该有哪些属性和方法   3、类和类之间具备哪些关系

面向对象种类

OOA: 面向对象的分析OOD: 面向对象设计

OOP: 面向对象程序

面向对象的三大特征

封装(Encapsulation) 对外部不可见

继承(Inheritance) 扩展类的功能

多态(Polymorphism) 方法的重载、 对象的多态性 (方法的重载 )

类与对象

类:表示共性的产物 (抽象的、概念上的定义)

对象:对象就是一个个性的体现(该类事物的每个个体 实例 instance)

关系:没有类则肯定没有对象的产生,没有对象的产生类不能使,对象的所有活动范围在类中已经完整定义出来了。

类(相当于一个对象的操作图纸) ——>对象(按照此图纸产生出来的对象)——>被用户使用

类与对象的概念:

类的组成:属性 方法

class 类名称{

数据类型 属性;//声明成员变量(属性)

public 返回数据类型  方法名称(参数1,参数2.......){//定义方法的内容

程序语句;

return 表达式;

对象的生产:(对象声明之后,必须实例化才能使用)需要划分堆栈空间的

1.声明对象: 类名称 对象名称 = null;

2.实例化对象: 对象名称 = new 类名();  (会开辟对应的堆内存空间)

在堆内存中实际上存放的是对象的各个属性

类中的属性全部保存在堆内存中,全部的方法保存在全局代码区之中。

  内存划分(只要一出现关键字new 就表示要开辟新的内存空间)

public class ClassDemo{
	public static void main(String args[]){
		Person per = new Person();
	}
}

内存操作:为属性赋值

public class ClassDemo{
	public static void main(String args[ ]){
		Person per = new Person();
		per.name = "张三";//为属性赋值
		per.age = 30; 
		per.tell(); //调用类中的方法
	}
}

在对象的操作中实际上是存在引用传递的。(将一个堆内存空间的使用权交给了其他对象)

一个栈内存空间只能引用一个堆内存空间,但是一个堆内存可以呗多个栈内存所同时指向

操作类的两种情况:

访问属性: 对象名称.属性 = 值

访问方法: 对象名称.方法

【上篇】
【下篇】

抱歉!评论已关闭.