JAVA学习之面向对象

JAVA学习之面向对象

一、面向过程和面向对象的区别

1.面向过程的开发中没有独立体的概念,使用因为所以(因果关系)去完成项目的开发。

2.面向对象不关心底层的实现原理,只关心某个独立的个体可以实现什么功能。面向对象更符合人类的思维过程。比如电脑主机中的内存条,独立显卡等等可以替换掉,只要完成其功能即可。

3.对比
-面向过程:主要优点是 实现的具体过程,因果关系【集成显卡的开发思路】
*优点:对于业务逻辑比较简单的程序,可以达到快速开发的目的,前期投入成本比较低。
*缺点:采用面向过程的方式开发很难解决非常复杂的业务逻辑,另外面向过程的方式导致软件元素之间的耦合度非常高,只要其中一环出了问题,整个系统受到影响,导致最终的软件扩展力差。另外,由于没有独立体的概念,所以无法达到组件复用。

-面向对象:主要关注点是对象【独立体】能够完成哪些功能【独立显卡】
*优点:耦合度低,扩展力强。更容易解决现实世界中更复杂的业务逻辑,组件复用性强。
*缺点:前期投入成本比较高,需要进行独立体的抽取,大量的系统分析和设计。

二、面向对象的三大特征

  • 封装
  • 继承
  • 多态
    所以面向对象的编程语言都有这三大特征(先背会)。

采用面向对象的方式开发一个软件,生命周期中:使用OO面向对象方式

  • 面向对象分析:OOA
  • 面向对象设计:OOD
  • 面向对象编程:OOP

三、类和对象的概念

1.什么是类

  • 类是不存在的,人的大脑高度抽象出来的具有相同特征的若干个对象的模板【属性】(学生)。
  • 类又名类型,代表一类事物
  • 在现实世界中,对象A和对象B之间具有共同的特征,进行抽象总结出的一个模板,这个模板被称为类

2.什么是对象

  • 对象是真实存在的个体,现实世界中真实存在(张三、李四…)

3.软件开发的整个过程

  • 程序员从现实世界中寻找对象
  • 寻找了N个对象之后,发现所有的对象都有共同特征
  • 程序员在大脑中形成了一个模板【类】
  • Java程序员可以通过代码来表述一个类
  • Java程序中有了类的定义
  • 然后通过类就可以创造对象 有了对象之后,
  • 可以让对象直接协作起来形成一个系统

4.关系

  • 类–【实例化】–> 对象
  • 对象又被称为实例/instance
  • 对象–【抽象】–> 类
  • 重点
    类描述的是对象的共同特征
    共同特征例如:身高特征
    这个身高特征在访问的时候,必须先创建对象,通过对象去访问这个 特征
    因为这个特征具体的某个对象上之后,值不同。有的对象身高180,有的280.
    5.一个类主要描述什么信息
  • 主要描述的是:状态+动作。
  • 状态:名字、身高、性别
  • 动作:唱歌、学习、跳舞
  • 状态->>一个类的属性
  • 动作->>一个类的方法
{
	属性;//描述对象的状态信息
	方法;//描述对象的动作信息
}
状态和动作具体到每个对象,最终的结果可能不一样

四、类的定义

//语法结构
[修饰符列表] class 类名{
			//类体
}

学生类,描述所有学生对象的共同特征:
学生对象有哪些状态信息:通常采用变量来定义
学号【int】
姓名【String】
年龄【int】
性别【boolean】

public class Student{
		int no; //学号
		String name;//姓名
		boolean sex;//性别
		int age; //年龄
}

学生对象有哪些动作信息:方法信息
吃饭
睡觉
学习

你可能感兴趣的:(JAVA学习之路,java)