栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

可以用面向对象或面向过程来定义一个编程语言吗?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

可以用面向对象或面向过程来定义一个编程语言吗?

众所周知c语言的面向过程的编程语言

 而面向对象有c++,Java,Python等

但是,可以用面向对象,面向过程来定义一个编程语言吗?

我觉得不可以,我觉得面向对象,面向过程是一种代码的设计思想,是一种方法,是程序员交流的一种思维。

Java是面向对象语言,那难道我就不可以用面向过程了吗?

这是面向过程的一个方法编写:

public static void main(String[] ARGE) {
        int a = 1;
        int b = 2;
        int c = a + b;
        System.out.println("a + b 的值为:" +c);
    }

 运行起来:

这是用面向对象的方法编写:

class zhi{
    int a = 1;
    int b = 2;
}
class f extends zhi{
    public void yunsuan(){
        int c = a + b ;
        System.out.println("a + b 的值为:" +c);
    }
}
public class v1 {
    public static void main(String[] ARGE) {
        f i = new f();
        i.yunsuan();
    }
}

运行起来:

 可以看到,我们的面向过程会更加简便快捷,运行效率也更快

两种方法都可以实现a + b等于3的值,那这样还可以定义说Java是面向对象的编程语言吗?

以前的我一直以为Python是面向过程的语言(因为在学习与写码中我一直都是用面向过程的思维写法)昨天翻阅资料才发现,Python是面向对象....

所以我认为面向对象,面向过程不可以用来定义一个编程语言,因为使用面向对象或者面向过程的编程思维是取决于写码的人,只能说你写的码是面向对象还是面向过程!

经过了这番思考,知道面向过程的运行效率是比面向对象的效率高的!可面向过程却没有面向对象的维护效率和复用性高。

那仔细想想,可不可以将这两款编程的思维结合起来,从而实现一种更高效率的设计思维呢?

同一个事件:小明去书店买一本书,书需要12块钱,由于小明不喜欢看自己余额还剩下多少,请写出一个计算器判断小明带的钱是否可以购买这本书。

面向过程:

package 面向;
import java.util.Scanner;
public class 面向过程 {
    public static void main(String[] ARGE){
        System.out.println("购买这本书的价格为:12");
        System.out.println("小明的余额剩下:");
        Scanner sc = new Scanner(System.in);
        float a = sc.nextFloat();
        if (a > 12){
            System.out.println("小明的钱足够购买");
        }
        else {
            System.out.println("小明的钱不足以购买");
        }
    }
}

面向对象:

package 面向;
import java.util.Scanner;
class daoyu{
    public void jiage(){
        System.out.println("购买这本书的价格为:12");
    }
    public void yue(){
        System.out.println("小明的余额剩下:");
    }
}
class shurpanduan extends daoyu{
    public void panduan() {
        Scanner sc = new Scanner(System.in);
        float a = sc.nextFloat();
        if (a > 12) {
            System.out.println("小明的钱足够购买");
        } else {
            System.out.println("小明的钱不足以购买");
        }
    }
}
public class 面向对象 {
    public static void main(String[] ARGE){
        shurpanduan sr = new shurpanduan();
        sr.jiage();
        sr.yue();
        sr.panduan();
    }
}

新的设计思维:将每个会发生的事件都设计为对象,然后运行的每个环节都用面向过程进行

package 面向;
import java.util.Scanner;
class daoyu1{
    public void jiage(){
        System.out.println("购买这本书的价格为:12");
    }
    public void yue(){
        System.out.println("小明的余额剩下:");
    }
}
class panduan{
    public void go() {
            System.out.println("小明的钱足够购买");
    }
    public void bgo(){
        System.out.println("小明的钱不足以购买");
    }
}
public class 新思维 {
    public static void main(String[] arge){
        daoyu1 a = new daoyu1();
        panduan b = new panduan();
        a.jiage();
        a.yue();
        Scanner sc = new Scanner(System.in);
        float d = sc.nextFloat();
        if (d > 12) {
            b.go();
        } else {
            b.bgo();
        }
    }
}

运行效果:

 

这样就很好弥补了面向对象的可维护,复用性等等,也大大提高面向对象的运行效率。(博主的Java学生管理系统就是按照这个方法进行编写。)

Java中学生管理系统(对分数健康查询与修改)

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1021848.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号