清风别苑(筹)

将技术进行到底... 当开始我第一篇自己的技术blog的时候我将进入高手预备役...

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
对象.类.抽象类.接口   这些本应该都是OOP的基本概念,可是当有人真正问我他们的各自的含义,区别的时候,竟然会语塞,看来我仍然没有真正去理解这些概念,既然如此那就回头再看看,从基础开始吧,

1.首先说对象,本来按照OOP思想在英文中对象(Object:对象,目标),可以代表世间万物,任何东西任何事物都可以标注成一个对象,一个研究的载体.甚至一些是精神世界的东西也可以做为一个对象,所以对象不光是实际"存在"的,也可以是我们感知的.
在我们中国人的生活中的,对象"一词在现代汉语中多用于"男女朋友"之意,那我就从我们中国人想当然的习惯中加以理解吧.对象,就是我的女朋友(好可惜,我现在只能靠感知...),她有很多的特征:漂亮beautiful),爱逛街(shop)...还经常cry....等等,如果我用抽象思维来理解她,那她就成为了一个类(女朋友类):

2.;类:
   class MyGirlFriend(){
           public  外型;
           private 内心;
           private  撒娇();
           public   shop();
           public   cry();
}
这其中:"外型,内心"是她的个人特征(属性:attribute),public 表示公开的,外人一眼能见的,private 表示内在的,一般人看不见的(或许只有我知道的,嘿嘿...),
撒娇();shop();cry();则是她常见的一些行为,"撒娇"表示是在shop,和cry的时候才表现出来的行为,比如她想拉着你逛街了,她会先向你做出一件事情:撒娇(),为了实现shop这个方法(目的)可能她还会调用其他的手段(汗...).还有cry()的行为可能也是她向你"撒娇()"的一种手段.那么在这个里面呢,private  和public 的区别:如果我想让她撒娇()恐怕不行,得先提议带她shop().

2.再说实例.(单词忘记,,)
  因为以上这些只是我的假设,我希望有这么一个GF,如果在我还没有的情况下,那就只有一个方法:去找(new).
如果找到了,那么我就new成功了一个对象.就创造了一个"MyGirlFriend"的实例...如果你new 了多了,那你就发了,可以找到好多好多的女朋友了...

3.接口(interface):这个似乎不好用这个来描述了,请朋友们帮忙补充吧
   接口就是描述想实现什么功能,但是类是描述怎么实现.一个"想",一个"做"
   在接口中不能定义成员变量。只能有方法的声明和静态变量(可以是常量)的声明。
  接口和实现该接口的类具有一种"like - a "的关系
修饰词只能是public,
4.抽象类(加abstracta修饰的类)
   当你不知道想找什么样的女朋友的时候,你不能确切的知道你想要的女朋友时,那么你就用"抽象类"吧.
   
 

  

posted on 2007-07-15 23:36  清风布衣  阅读(397)  评论(1编辑  收藏  举报