Java面向对象概念
面向对象(Object-Oriented Programming,OOP)是一种编程思想
面向对象编程的本质就是:以类的方式组织代码,以对象的组织封装数据
面向对象的三大基本特征:
-
封装
-
继承
-
多态
对 Java 语言来说,一切皆是对象。把现实世界中的对象抽象地体现在编程世界中,一个对象代表了某个具体的操作。一个个对象最终组成了完整的程序设计,这些对象可以是独立存在的,也可以是从别的对象继承过来的。对象之间通过相互作用传递信息,实现程序开发。
面向对象VS面向过程
-
面向对象和面向过程都是一种思想
-
面向过程强调的是功能、行为
-
面向对象是相对面向过程而言
-
面向对象:将功能封装进对象,强调具备了功能的对象
-
面向对象是基于面向过程的
举例:
点外卖:
使用面向过程思考:打开app -> 选好想吃的餐 -> 商家接单 -> 商家做餐 -> 外卖员取餐、送餐 -> 等待送达
使用面向对象思考:打开app -> 选好想吃的餐-> 等待送达
在面向对象的思维中,点外卖只需要在app点好等待送达就行,而不需要考虑这份快餐是怎么做出来的以及怎么送来的,所以只要给点餐这个对象增加这些功能:做餐和送餐,就可以实现点外卖的目的
面向过程:强调步骤;
面向对象:强调对象。
由以上例子可知,面向对象能让复杂的问题简单化,程序员不需要了解具体的实现过程,只需要指挥对象去实现功能(从执行者变成指挥者)
面向对象的三大核心特性
- 可重用性:代码重复使用,减少代码量,提高开发效率。面向对象的三大基本特征(继承、封装和多态)都围绕这个核心。
- 可扩展性:指新的功能可以很容易地加入到系统中来,便于软件的修改。
- 可管理性:能够将功能与数据结合,方便管理。
抽象
所谓的抽象,就是把同一类事物中共有的特征(属性)和行为(功能、方法)进行抽取,归纳,总结。
抽象的过程其实就是面向对象编程的核心思想
类与对象的关系
-
类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物
-
对象是抽象概念的具体实例
-
属性和对象构成了一个类
对象
对象(Object)是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。
任何具有状态和行为的实体都称为对象。例如:椅子,钢笔,桌子,键盘,自行车等。它可以是物理和逻辑的。
-
创建对象
使用new关键字创建对象
类名 对象名 = new 类名();
例如:
public class Application {
public static void main(String[] args) {
//类:抽象的,实例化
//类实例化后会返回一个自己的对象
//student对象就是一个Student类的具体实例
Student student = new Student(); //创建对象
student.name = "小明"; //调用Student类中的属性
System.out.println(student.name);
}
}
-
使用对象
调用成员变量:
对象名.成员变量;
调用成员方法:
对象名.方法名(参数列表);
类
类:用来描述一类具有相同特征(属性)和相同行为(方法)的对象。(可以比喻为模板)
对象的集合称为类,它是一个逻辑实体。例如,人是一个类,动物是一个类,汽车是一个类
-
Java中用class关键字来描述类
- 成员属性(变量):对应的就是事物的属性
- 成员方法:对象事物的行为
-
类的定义:
public class 类名{
//成员变量
//成员方法
}
-
定义类:就是定义类的成员,包括成员变量和成员方法
-
类的成员:
- 成员变量:和之前定义的变量几乎是一样的,只不过位置发生了改变,成员变量位于类中,任何方法之外。
- 成员方法:和之前定义的方法几乎是一样的,只不过把static关键字去掉
此学习资料参考于:

浙公网安备 33010602011771号