不是很理解面向对象,谁能给我解释一下呢,
最好别象书里那么专业的讲,能用大白话给我讲讲么?

解决方案 »

  1.   

    汗,这问题把我直接打蒙了....假如楼主找对象,也就是说相亲,有两个候选人 女孩A 女孩B,那么面向过程的代码是这么写的:相亲过程
    {
      外貌 女孩A的外貌;
      外貌 女孩B的外貌;
      言谈 女孩A的言谈;
      言谈 女孩B的言谈;  void 相亲()
      {
        结论 = 相亲女孩A() + 相亲女孩B()
      }  结论A 相亲女孩A()
      {
        印象1 = 浏览(女孩A的外貌);
        印象2 = 聊天(女孩A的言谈);
        结论A = 楼主的思考(印象1,印象2);
        return 结论A;
      }  结论B 相亲女孩B()
      {
        印象1 = 浏览(女孩B的外貌);
        印象2 = 聊天(女孩B的言谈);
        结论B = 楼主的思考(印象1,印象2);
        return 结论B;
      }
      
      印象1 浏览(女孩的外貌)
      {
       ... ... 
      }  印象2 询问(女孩的言谈)
      {
       ... ... 
      }  结论 楼主的思考(印象1,印象2)
      {
       ... ... 
      }}
    当相亲的对象很多的时候,就要过程就很长更重要的是:楼主的情敌们也可以自由调用女孩子们的外貌和言谈.....而楼主的印象如何,结论是什么,大家都能看到。然后楼主就怒了,灵机一动,把相亲的代码用 面向对象的方式编写
    public class 女孩
    {
      private 外貌 女孩的外貌;
      private 言谈 女孩的言谈;  public 外貌言谈的set和get方法(){}
    }public class 相亲中的楼主
    {   private String 外貌印象;
      private String 聊天印象;
      private String 结论;
      private static String 最后结论;  private String 相亲(女孩 相亲的对象)
      {
        外貌印象 = this.浏览( 相亲的对象.get外貌() );
        聊天印象 = this.聊天( 相亲的对象.get言谈() );
        结论 = this.楼主的思考( 外貌印象 , 聊天印象 );
      }
      
      private String 浏览(外貌)
      {
       ... ... 
      }  private String 询问(言谈)
      {
       ... ... 
      }  private String 楼主的思考(印象1,印象2)
      {
       ... ... 
      }  public void 楼主相亲()
      {
        相亲中的楼主 过程A = new 相亲中的楼主();
        女孩 女孩A = new 女孩();
        过程A.结论 = 过程A.相亲(女孩A);
        
        相亲中的楼主 过程B = new 相亲中的楼主();
        女孩 女孩B = new 女孩();
        过程B.结论 = 过程B.相亲(女孩B);
        
        最后结论 = 过程A.结论 + 过程B.结论;
      }
    }
    那么楼主的相亲,就是面向对象的,相亲了几个,长的怎么样,楼主怎么相亲的,结论如果,我们都不知道了。
    也就是说,面向对象的第一个,也是最明显的特点:被封装了起来。这里,女孩A 和 女孩A的共有属性被抽象成了 女孩 类,找对象的时候再被实例化为两个女孩;
    而楼主相亲的内部过程也被封装.女孩A和B如何,只有实例化它们的"相亲中的楼主"知道...
    而楼主相亲如何,也只有实例化自己的"相亲中的楼主"知道...
      

  2.   

    对了public class 相亲中的楼主这个错了class 相亲中的楼主
    public类只能有一个...