面向对象编程入门总结(一)

#博学谷IT学习技术支持#

一、类与对象

现实世界中,所有我们能够看到的万事万物都是对象。对象是客观存在的,比如世界上所有的图形都可以看成是一个对象,它们拥有不同的形状,大小,规则。所以,为了要在计算机语言中重现所有的图像,我们只能够所有的图形找出它们的公共点,把具有相同性质的图形统称为一类。比如,正方形类,长方形类,三角形类等等。

同时,因为我们对世界认识的不足,所以可能有其他图形是我们暂时不知道,为了避免之后会出现的问题,所以我们就把所有的图形,(已知或者未知的)都统称了图形类,这个类里没有具体的大小,形状,以及规则,所以可以不用包含任何代码,这种类就叫做抽象类。

1.类的性质

(1)继承性

而其他图形类都是这一类的一部分,所以可以说都是继承于这一抽象类,这就是面向程序设计的继承性。继承的特点就是一个由一般到特殊的过程,相对应的限制条件也是越来越多。

正如我们初中所学过的,所有的长方形都是平行四边形,而所有的正方形也都是长方形。

所以可以说长方形类继承平行四边形类,正方形类继承长方形类。

原本的类就是父类,继承后得到的新类就是子类。

(2)多态性

当父类中存在一种方法时,它在不同子类中会表现出不同的形式。

比如,平行四边形类中定义了绘制图形这一方法时,长方形类和菱形类都继承自平行四边形类,但是它们用这一方法绘制出来的图形却分别是长方形和菱形,这就是父类的方法在子类中出现的多态性。

(3)封装性

封装的特点在于将类的属性和行为进行装箱,只留下对外的接口,保证了类内部的安全性和稳定性,不再需要用户对其内部结构有所了解,降低了操作的难度。

2.对象

类只是一类事物的统称,如果要描述具体的事件,还需要我们去建立具体的实例对象来表示。

创建方法为new 类名();

同时为了能够具体描述这一对象,需要给它取个名字,所以一般都需要再用一个变量进行接收:

类名   名字=new 类名();

(1)成员变量

同时对象基本具有两种属性,静态的属性以及动态的行为。

比如一个长方形它就拥有四边,四角,以及绘制长方形的这一方法。

所以长方形的四边边长和四角角度就是长方形的属性,也就是这一对象的成员变量。

表示格式都是

权限修饰符 类型  名称;

其中不同长方形对应的边长可以不同,但是四个角的角度都是90°,所以角度这一属性又是始终不变的,所以是静态成员变量,表示格式为

权限修饰符 static 类型 名称;

所以静态成员变量是优先于对象的创建而存在的。

比如我们无需去画一个具体的长方形,就一定知道它的四个角一定为90°;但是没有具体的长方形,我们是没办法知道它具体的四边边长的,这就是成员变量与静态成员变量的区别。

(2)方法

类的方法主要分为两类:

一类是创建对象时用到的构造方法,形式一般为public 类名(){   }

同时根据()里有无参数分为无参构造方法和有参构造方法;

另一类是描述对象的行为的成员方法,形式一般为

权限修饰符 返回值类型 方法名(参数类型 参数名){  }

除此之外,还有一种特殊的方法,静态方法,它表示这一方法是不可以改动的,比如圆的面积公式就可以看成是一种静态方法,不管在什么样的圆类,圆的面积都是等于Πr2,所以调用时可以直接通过类名.方法名调用;

而其他的方法都需要先创建对象,通过对象.方法名调用。

(对于编程中的“.”,其实可以理解为汉语中的“的”)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值