关于Java中的封装、多态、继承(1)

来源:互联网 发布:caffe loss大小 编辑:程序博客网 时间:2024/05/19 20:56

Java是一种面向对象的语言 ,面向对象的三大特点(1)继承(2)多态(3)封装。

其中类是对象的蓝图,是对一类对象的描述。在Java中,类之间是有三种关系的,(1)聚集关系(2)依赖关系(3)继承关系

类是一类对象的集合 ,就像在牲畜当中有一种叫做鸡的动物,而对象是对类的实例化,就像鸡是牲畜的一种实例。

类表示了一类对象,建立事物的抽象模型实际上是表达该事物的性质和行为。用类来建立抽象模型是通过类定义的方法和变量实现的。

类中定义的属性是一种可存储的变量,它表示的就是事物的性质,事物所具有的行为是由定义的方法实现的,其中定义的方法和变量就叫做类的成员。

对象是类表示抽象事物的具体实例,创建对象的过程也就是我们所说的实例化的过程。

变量分为成员变量和局部变量。成员变量直接定义 在类中,它在整个类中都是有效的,存在于堆中,随着对象的产生而存在,消失而消失;而局部变量定义在方法中,参数上,它只在它所表示的大括号中有效{  }存在于 栈中,随着所属区域的运行而存在,结束而释放,。

定义类其实就是定义类的成员变量和成员函数。其实成员变量也就是类的属性,成员函数也就是定义的方法。

1.

封装 (encapsulation)
隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。
封装途径
封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。
封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,以特定的访问权限来使用类的成员。

封装在网络编程里面的意思, 当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络,其中每一层对收到的数据都要增加一些首部

它的原则是:

1把尽可能多的东西藏起来.对外提供简捷的接口。
2把所有的属性藏起来。
例如,在抽象的基础上,我们可以将时钟的数据和功能封装起来,构成一个时钟类。
按c++的语法,时钟类的声明如下:
class Clock
{
public: //共有成员,外部接口
void SetTime(int NewH,int NewM,int NewS);
void ShowTime();
private: //私有成员,外部无法访问
int Hour,Minute,Second;
}



0 0