面向对象编程思想

什么是面向过程?

  面向过程的编程思想就是在面对问题的时候使用计算机能够理解的逻辑来描述和表达待解决的问题以及具体的求解过程。例如写一个1+1等于2的程序,你会自然的想到输入两个变量,每个变量的值为1,然后对这两个变量求和,这就是面向过程的编程思想。


 public static void main(String[] args) {

        int a=1;

        int b=1;

        int result=a+b;

        System.out.println(result);

 }

  好的代码要达到可维护可复用可扩展以及灵活性好的四个特点。可维护就是需要修改的时候,只需要修改变动的那一部分,使得修改达到最小;可复用指代码不仅在写的地方使用,在别处依然可以调用这段代码;可扩展指当后来者想要扩展功能的时候不需要在之前代码修改的基础上进行修改。灵活性好,例如在代码实现功能方面,不仅实现了需求实现代码,还能够随时满足其它功能的扩展。

什么是面向对象?

  那么如何实现上述四个特点呢,面向对象编程则能很好的实现。为什么面向对象编程能够实现上述四个特点呢,因为面向对象编程本身具有的三个特点:封装继承多态

  

封装:就是把对象的属性和行为(数据)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节,就是把不想告诉或者不该告诉别人的东西隐藏起来,把可以告诉别人的公开,别人只能用我提供的功能实现需求,而不知道是如何实现的。增加安全性

继承:是面向对象最显著的一个特性,继承是从已有的类中派生出新的类称为子类,子类继承父类的数据属性和行为,并能根据自己的需求扩展出新的行为,提高了代码的复用性。

多态:指允许不同的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式(发送消息就是函数调用)。封装和继承几乎都是为多态而准备的,在执行期间判断引用对象的实际类型,根据其实际的类型调用其相应的方法。

  如何使用上述思想编程呢,还是上面那个例子,1+1等于2还可以这么写:把加法当作一种对象,那么很自然的可以想到减法,除法,和乘法,他们都具有两个操作数以及进行操作的共同点,因此可以写一个共同的类,这个类里包含了这些操作的共同的部分,再写一个加法就继承这个共同的类,然后实现加法部分就可以完成我们需要的。


public abstract class Operation {
    public abstract int operation(int a,int b);
}
 
public class Add extends Operation {
    @Override
    public int operation(int a, int b) {
        return add(a, b);
    }

    private int add(int a, int b) {
        return a + b;
    }
}


public static void main(String[] args) {
        Operation add = new Add;
        System.out.println(add.operation(1, 1));
}

————————————————————————————————————————————————————————

面向过程和面向对象的区别:

面向过程程序设计:所谓的面向过程程序设计就是函数的定义和调用。简单地说,过程就是程序执行某项操作的一段代码,函数是最常用的过程。

面向对象程序设计:面向对象程序设计就是对象加消息。第一,程序一般由类的定义和使用两部分组成,而类的实例即对象;第二,程序中的一切操作都是通过对象发送消息来实现的,对象接收消息后,启动有关方法完成相应的操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值