JAVA教程第一讲Java语言概述1.3
1.3一切都是对象。
1.3.1面向过程
面向对象的首要原则是将数据和对数据的操作封装在一个类中,在编程中考虑多个对象及其关系。有些功能不一定完全由一个程序段实现,也可以由其他对象实现。在这种情况下,类Max完成评估功能。面向对象的另一个优点是代码的重用。比如其他程序需要求值的功能,只需要Max类的对象就可以达到目的。但是,如果所有的评估算法都像面向流程的代码段一样在代码段中实现,它们就不能被重用。
早期的编程语言如FORTRAN和C基本上都是面向过程的语言,其编程的主要思想集中在算法的实现上。例如,以下是用于查找正整数值的面向过程的程序:
int maxSoFar=0,price = 1;//value maxSoFar的初始值为0,price为输入值
,而(price>0){ //循环输入price的值
if (price>maxSoFar) //输入值price大于value maxSoFar
maxSoFar = price;//那么maxSoFar的值就是price的值
string input = joptionpane . showinputdialog("输入下一个价格");
//继续输入价格
price = double . parse double(input);//将字符串输入转换为整数price
}
system . out . println("最大为"+max sofa);//打印值maxSoFar
}
这个程序段主要实现求值算法,但如果考虑使用面向对象编程,可以是另一种方式:
Max Max = new Max();//Max是类Max
while(price > 0){
Max . update Max(price)的对象;//Object max调用updateMax方法更新值
price = max . getprice();//Object max调用getPrice获取下一个价格的值
}
system . out . println("最大值为"+max . get max());//对象max调用getMax
方法获取值并打印出来。
面向对象
纯面向对象的编程方法如下:
1。一切都是物体。把一个对象想象成一种新类型的变量,它保存数据并可以对自己的数据进行操作。例如,类Max保存数据的值,而方法updateMax根据新添加的价格值生成最新值,方法getMax返回数据的值。
2.一个程序是许多对象的组合。通过消息传递,每个对象都知道自己应该做什么。如果你需要一个对象做某事,你必须给这个对象“发送一条消息”。具体来说,您可以将消息视为一个调用请求,它调用从属于目标对象的方法。比如上面的面向对象的程序段应该属于某个类,比如它属于类Shopping,然后这个Shopping包含了类max的object max。调用方法updatemax相当于购物对象向Max对象发出指令“UPDATE max”,要求对象Max重新计算值。
3.每个对象都有自己的存储空空间。可以容纳其他对象,或者通过封装现有对象来生成新对象。所以对象的概念虽然很简单,但是封装后可以达到程序中任何高的复杂度。
4.每个对象都属于一个类。根据语法,每个对象都是一个类的实例。一个类最重要的特性是“可以向它发送什么消息?”,也就是类本身有哪些操作。例如,max是Max类的一个实例。
0条评论