面向过程和面向对象程序设计的区别

1.面向过程的程序设计语言

所谓面向过程是指从要解决的问题出发,围绕问题的解决过程分析问题。 面向过程的分析方法是问题的具体解决步骤,以及解决问题所需要的数据, 所以在面向过程程序设计中,重点是设计算法(解决问题的方法)和数据结构(数据的表示和存储)。 面向过程的开发语言有Basic,Fortran,Pascal,C,其编程思路主要专注于算法的实现。 以下程序段体现了面向过程的设计思想,主要实现了求最大值的算法,它把算法表述出来,程序从main()方法开始运行,当问题解决时,程序就终止了。

#include<stdio.h>
void main(){
          
   
	int max = 0;//最大值max的初始值为0
	int imput;//input是输入的值
	scanf("%d",&input);
	while(input>0){
          
   
		if(input>max)
			max=input;
		scanf("%d",&input);//继续输入input
		if(input==100)
				break;
		}
	print("The max is %d",max);//打印最大值
}

2.面向对象的程序设计语言

面向对象的基本思想以一种更接近人的思维方式的方法去分析问题, 面向对象设计首先分析问题由哪些部分组成,每部分的关系如何, 然后再分析每一部分怎样完成, 即面向对象以对象及其行为为中心来考虑处理问题的思想体系和方法。

面向独享通过使用对象、继承、封装、消息等基本概念来进行程序设计。 采用面向对象方法设计的软件不仅易于理解,而且易于维护和修改。

典型面向对象开发语言有Java,C++,VB,VC,VJ++,Dephli,C#.

import java.util.Scanner;
public class demo1 {
          
   
	int max = 0;
	Scanner sc = new Scanner(System.in);
	
	void maxCompared(int a) {
          
   
		if(max < a)
			max = a;
	}
	
	int getInput() {
          
   
		int a = sc.nextInt();
		return a;
	}
	
	int getMax() {
          
   
		return max;
	}
	
	void output() {
          
   
		int input;
		sc = new Scanner(System.in);
		System.out.println("输入任意正整数,按ENTER输入下一个整数");
		System.out.println("当输入0或负数时自动退出程序");
		System.out.println("控制台现实输入的最大数");
		input = sc.nextInt();
		while(input>0) {
          
   
			maxCompared(input);
			input = getInput();
			if(input == 0)
				break;
				}
		System.out.println("最大数是:"+getMax());
	}
	
	public static void main(String[] args) {
          
   
		demo1 demo = new demo1();
		demo.output();
	}
}

输出结果为:

输入任意正整数,按ENTER输入下一个整数
当输入0或负数时自动退出程序
控制台现实输入的最大数

11
12
22
33
0
最大数是:33

`该程序段也是实现求最大值的算法,它通过分析最大值的demo1由哪些部分组成,将这个类相关的属性和方法封装,再产生相应对象,通过对象去调用与需求相关的方法来解决问题。

经验分享 程序员 微信小程序 职场和发展