> 文档中心 > 【JAVA基础】JAVA基础之面向对象

【JAVA基础】JAVA基础之面向对象

1)什么是面向对象

面向对象开发方法将面向对象的思想应用于软件开发过程中,指导开发活动,是建立在“对象”概念基础上的方法学,简称OO( Object-Oriented)方法。面向对象方法的本质是主张参照人们认识一个现实系统的方法,完成分析、设计与实现一个软件系统,提倡用人类在现实生活中常用的思维方法来认识和理解描述客观事物,强调最终建立的系统能映射问题域,使得系统中的对象,以及对象之间的关系能够如实地反映问题域中固有的事物及其关系。

2)对象

对象是由数据(描述事物的属性)和作用于数据的操作(体现事物的行为)组成的封装体,描述客观事物的一个实体,是构成系统的基本单元。对象的概念贯穿于面向对象开发全过程,即系统就是对象构成的,只是每个阶段对象的具体化程度不一样,这样使各个开发阶段的系统成分良好地对应,显著地提高了系统的开发效率与质量,并大大降低系统维护的难度。

3)类

类是对一组有相同数据和相同操作的对象的定义,是对象的模板,其包含的方法和数据描述一组对象的共同行为和属性。类是在对象之上的抽象,对象则是类的具体化,是类的实例。

4)封装性

封装是一种信息隐蔽技术,它体现于类的说明,是对象的重要特性。封装使数据和加工该数据的方法(函数)封装为一个整体,以实现独立性很强的模块,使得用户只能见到对象的外特性(对象能接受哪些消息,具有那些处理能力),而对象的内特性(保存内部状态的私有数据和实现加工能力的算法)对用户是隐蔽的。封装的目的在于把对象的设计者和对象者的使用分开,使用者不必知晓行为实现的细节,只须用设计者提供的消息来访问该对象。

5)继承性

继承性是子类自动共享父类之间数据和方法的机制。它由类的派生功能体现。一个类直接继承其它类的全部描述,同时可修改和扩充。继承具有传递性。继承分为单继承(一个子类只有一父类)和多重继承(一个类有多个父类)。类的对象是各自封闭的,如果没继承性机制,则类对象中数据、方法就会出现大量重复。继承不仅支持系统的可重用性,而且还促进系统的可扩充性。继承概念的实现方式有二类:实现继承与接口继承。实现继承是指直接使用基类的属性和方法而无需额外编码的能力;接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力。

6)多态性

所谓多态就是指对象根据所接收的消息而做出动作,同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。多态机制使具有不同内部结构的对象可以共享相同的外部接口。

重点

方法重载

 方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。调用重载方法时,java编译器能通过检查调用的方法的参数类型和个数选择一个恰当的方法。方法重载通常用于创建完成一组任务相似但参数的类型或参数的个数或参数的顺序不同的方法。

Java的方法重载,就是在类中可以创建多个方法,它们可以有相同的名字,但必须具有不同的参数,即或者是参数的个数不同,或者是参数的类型不同。调用方法时通过传递给它们的不同个数和类型的参数,以及传入参数的顺序来决定具体使用哪个方法。

class MethodOverloading {     void receive(int i) { System.out.println("Received one int data"); System.out.println("i="+i);    }  void receive(float f) { System.out.println("Received one float data"); System.out.println("f="+f);    }  void receive(String s) { System.out.println("Received a String data"); System.out.println("s="+s);    }  public static void main(String [] args){ MethodOverloading m = new MethodOverloading(); m.receive(3456); m.receive(34.56f); m.receive("方法重载");    }}

注意,Java的方法重载要求同名的方法必须有不同的参数表,仅有返回类型不同是不足以区分两个重载的方法。

开发者涨薪指南 【JAVA基础】JAVA基础之面向对象 48位大咖的思考法则、工作方式、逻辑体系