您的位置:首页 > 其它

【设计模式】之面向对象基础一

2015-03-08 16:02 288 查看
总是在总是要等到睡觉前才知道功课只做了一点点。总是要等到考试后才知道该念的书都没有念。总是要等到学下一个项目的时候才知道上一个项目根本就没有学完。。。。学到设计模式的时候,才明白师傅当时的苦心。。原来基础打不好只能在后边的学习过程中费时间。。。不过还好的是我们还有这个机会不断的学习。不断地在后来的学习中反复碰到那些我们模棱两可的知识。。。初学设计模式,就先搞清楚一些基础的东西吧。尽管这些米老师也都说过,反复的学习中对它们的了解越来越深入。

首先从后边的附录中学到了一些概念性的东西。什么类,对象,构造方法,方法重载之类的。现在我就对这些概念一一解释。

【构造方法】所谓的构造方法就是一种特殊的方法。它是一个与类同名且没有返回值类型的方法。对象的创建就是靠构造方法来完成。它的功能主要是完成对象的初始化。当类实例化一个对象时,会自动调用一个构造方法。其次,构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有。.类中必定有构造方法,若不写,系统自动添加无参构造方法。比如说,Cat
cat =new Cat(); 中,new后边的Cat(),就是系统默认赋予的构造方法。空的构造方法什么事情也不做,只是为了让我们能够很顺利的实例化而已。。说白了,构造函数的作用就是为了当我们抽象出一个类的时候能够实例化出对象。。。。它是实例化的一种方法。。

【方法重载】“方法重载提供了创建同名的多个方法的能力。。但是这些方法需使用不同的参数类型。。需要注意的是,不劲构造方法可以重载,普通方法也是可以的。。。方法重载是让类以统一的方式处理不同类型数据的一种手段。就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同个数和类型的参数来决定具体使用哪个方法。就像是我们”卖东西“这个动作,做生意的时候我们要根据不同的季节出售不一样的商品,而不同的商品就是”卖东西“这个动作中不同的参数,冬天和夏天卖的这个方法是一样的。。方法重载就是这个道理。。。还有比如课本中举的例子,”叫“是我们抽象出来的一个方法,而不同的动物叫声不一样。这是我们可以通过改变方法中的参数来利用同一个方法使不同的动物发出不同的叫声。这就是方法重载的过程。。。

【封装、继承】封装就很容易理解了。每个对象都包含它能进行操作所需要的所有信息,这个特征称为封装,因此对象不必要依赖其它对象来完成自己的操作。。用通俗的话来理解一遍再去理解上边的话就会理解的更加深刻一点,就像是以前比较落后的时候,大家看个电影都是要集体的去看村子中放上一个大屏幕,还有一个投影仪,还需要有现成的光碟,还需要有专门的人去给大家放。这种看电影的方式就依赖的东西比较多,而现在一台电视机就全部搞定了,电视机自身包含了屏幕,内部又有一些可以让影响显示在屏幕中的零件,还有各种功能的零件,是的我们看电视的时候依赖的事物比较少。这就做到了很好的封装性。。封装的好处在于减少了对象之间的耦合性,当我们需要做一些改动的时候比较容易修改,容易维护,耦合性大的要修改的地方就要远远大于耦合性低的情况。。。。继承,也就更好理解了。比如说学生是一个父类,那么小学生、中学生、高中生、大学生便都可以称之为学生的子类,即,小学生、中学生、大学生都继承了学生的属性和方法。他们都有学生的性质。子类除了继承父类的属性之外还可以有一些自己的属性和方法。比如小鸟继承了动物这个类,但是小鸟会飞这个功能不是所有的动物的性质。。总结来说三句话;一、子类拥有父类非private的属性和功能。二、子类具有自己的属性和功能。三、子类还可以以自己的方式实现父类的功能(方法重写)。。。

【多态】表示不同的对象可以执行相同的动作,但是要通过它们自己的实现代码来执行,通过继承实现的不同对象调用相同的方法,表现出不同的行为,称之为多态。。。多态主要是通过重载来实现的。米老师总是给我们举那个苹果、香蕉、橘子的例子。这种观念早已深入人心。一双父母生出的孩子虽然都继承了父母双方的基因,但是孩子的长相都各不相同。这就是多态的概念。。。

【总结】还有很多概念性的东西要深刻理解。。。从基础开始学习。。。。万丈高楼平地起。。加油。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: