面向对象(Object-Oriented)

面向对象(Object-Oriented)

1.类与对象

对象是对客观事物的抽象,类是对对象的抽象。对象是类的实例,类是对象的模板

抽象:从被研究对象中舍弃个别的、非本质的或与研究主旨无关的次要特征,而抽取与研究内容有关的共性内容加以考察,形成对研究问题正确、简明扼要的认识。

2.类的域和方法

类和对象都有域和方法。

域是事物静态特征的抽象,也称属性或数据成员。
方法是事物动态特征的抽象,也称操作或成员方法。

3.对象创建和声明
创建对象:new Fruit();        ————分配在堆上
声明一个对象引用:Fruit f;     ———— 分配在栈上
初始化对象引用:f=new Fruit();

方法中定义的基本类型变量和对象的引用变量都是在内存中分配的。由new创建的对象存放在内存中。

4.三大基本特征:封装(encapsulation)、继承(inheritance)和多态(polymorphism)。

(1)封装

封装:利用抽象数据类型(类)将数据和基于数据的操作绑定在一起,数据被保存在抽象数据类型内部,系统只有通过被授权的操作方法才能够访问数据。封装是基于安全性的考虑,主要表现在定义为private。

特点
①数据和基于数据的操作方法构成一个统一体;
②类的操作方法实现细节被隐藏起来,只是通过操作接口名称进行调用,操作内部的变动不会影响接口的使用。

面向对象程序设计其中的一个关键是具有“高内聚,松耦合”的特点,这个特点就是通过封装和组合技术的综合运用来实现的。封装是利用访问控制符来实现,组合通过对象内部的属性引用来实现。
(2)继承

继承:使用关键字extends使两个类发生继承关系,新定义的类称为子类,子类可以从父类那里继承相应的属性和方法。一个类只允许有一个父类(单继承)。

注:
Object是所有类的共同祖先。
被final修饰的类称为最终类,它不能有子类。

继承的设计用途:
①是面向对象程序设计中对功能进行复用的重要手段;
②为引用带来了新特点,即使父类的声明可以引用所有子类对象。

(3)多态

多态:一个程序中同名但不同方法共存。Java提供两种多态机制——重载和覆盖。

重载(overloading):在类中定义了多个同名而不同内容参数的成员方法时,称这些方法是重载。
注:同名同参数但不同类型返回值的方法不是重载,不能通过编译。

覆盖(overriding):子类对父类参数相同、返回类型相同的同名方法重新进行定义。
注:
同名的static和非static不能相互覆盖;
当方法前有final修饰时,此方法不能在子类中进行覆盖;
抽象类中如果存在抽象方法,则具体子类必须对抽象方法进行覆盖。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Object-oriented programming with ABAP Objects(基于ABAP对象面向对象编程)是SAP开发平台ABAP中的一种编程范例。它利用面向对象的思想,将数据(对象的属性)和行为(对象的方法)封装在一起,以便更好地组织和管理代码。 在ABAP Objects中,可以定义类(class)来描述一个对象的特征和行为。通过类的实例化,可以创建具体的对象,并调用对象的方法来实现特定的功能。这种面向对象的编程模式使得代码更加模块化、可重用,并且更易于维护和扩展。 在ABAP Objects中,支持面向对象的四大特性:封装、继承、多态和抽象。封装可以将对象的内部状态和行为隐藏起来,只暴露必要的接口;继承可以通过创建子类来扩展和重用已有类的特性;多态可以实现在不同的对象上调用相同的方法,产生不同的行为;抽象可以定义接口规范,让具体的类去实现。 通过ABAP Objects,开发人员可以更加灵活地进行程序设计和实现,也能够更好地应对复杂的业务需求。同时,由于ABAP Objects与SAP系统集成紧密,因此可以很方便地访问和操作SAP系统中的数据和服务,为企业的业务流程提供更多的可能性。 总之,Object-oriented programming with ABAP Objects在SAP开发中扮演着重要的角色,它为开发人员提供了更加高效、可维护的编程模式,也为企业的信息化建设带来了更多的价值和机遇。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值