java语言--语言基础--面向对象

98 阅读2分钟

我入门的时候,因为一句话,对java语言有了初步的好感。这句话就是:万事万物皆对象。这大概是我接触面向对象的初步印象。

我以一个懵懂的小白,初次带入这个万事万物皆对象的领域,感觉一切都清晰了起来。

借用《java编程思想》中的例子:一个灯泡是一个对象,这个对象有开灯关灯等行为,有灯丝,玻璃等成员变量,而且当我可以操作这个灯泡开关,这大概就是封装。

当然灯泡也会有技术革新,也不一定是灯丝发光,玻璃遮罩。这时候我们可以再抽象一下,将灯泡的成员变量变为发光物、遮罩物。这不就是所有灯泡都有的特点了吗?所有类型的灯泡都可以继承我定义的抽象的灯泡,通过不同的发光体、遮罩物来实现开灯关灯的功能。这大概就是继承。

谈到发光,A电灯泡发红光,B灯泡发白光,这大概就是多态。

当然这仅是一些我在初学者时的初步理解。但也是比较形象的。

下面是我的一些总结:

1.具有明显功能的实体或者实例,是对象。

2.面向对象的最小单元程序是类。

3.类是对象的抽象,对象是类的具体,类是对象的模板,对象是类的实例。

面向对象的特征,在我的六年的开发生涯,也会经常感到这些特征带来的便利。

抽象

抽象是将一类对象共同特征总结出构造类的过程。抽象只关注对象具有哪些属性和行为,不关注如何实现。

继承

从已有类得到属性信息并建立新类的过程。继承让变化中的软件系统有了一定的延续性 ,同时继承也是封装程序中可变因素的重要手段。基本所有的设计模式都基于此种特征。

封装

通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。面向对象的本质就是将现实世界描绘成一系列完全自治、封闭的对象。

多态

多态性是指允许不同子类型的对象对同一消息作出不同的响应。简单的说就是用同样的对象引用调用同样的方法但是做了不同的事情。多态性分为编译时的多态性和运行时的多态性。去设计模式中体验她的魅力吧。