【Java基础篇】面向对象(Object Oriented)

1. 面向对象概念

1.1 什么事面向对象

面向对象(Object Oriented)是一种思想,90年代以后软件开发的主流思想。由于现实社会是由各种各样的事物所组成的,而我们编程又是在模拟现实社会,那么在程序中也要用一些东西来表示现实社会中的事物,这些东西就是程序中的对象。我们在程序中使用这些对象,对其特征和行为进行操作进行编程,这就是面向对象编程。在使用面向对象编程思想之前,我们通常用面向过程的思想编程,先分析出解决问题的步骤,然后按照步骤一步一步实现。

1.2 理解面向对象

  • 面向对象是相对面向过程而言
  • 面向过程
    • 强调的是功能行为
  • 面向对象
    • 将功能封装进对象,强调具备了功能的对象。

1.3 面向对象的特点

  • 是一种符合人们思考习惯的思想
  • 可以将复杂的事情简单化
  • 将程序员从执行者转换成了指挥者
  • 完成需求时:
    • 先要去找具有所需的功能的对象来用。
    • 如果该对象不存在,那么创建一个具有所需功能的对象。
    • 这样简化开发并提高复用。

1.4 面向对象开发设计特征

  • 开发的过程:其实就是不断的创建对象,使用对象, 指挥对象做事情。
  • 设计的过程:其实就是在管理和维护对象之间的关系。
  • 面向对象的特征:
    • 封装(encapsulation)
    • 继承(inheritance)
    • 多态(polymorphism)
  • 面向对象编程的优点
    • 提高代码复用性。
    • 使用者无需关心具体细节。
    • 转变程序员角色,更加符合人的思维习惯。

2. 类与对象

2.1 什么是类

类是用来描述对象的。由于对象是虚拟出来的东西,是看不见摸不着的,我们需要在程序中使用对象,就需要用一种方式来描述对象,然后根据这个描述来创建对象。使用计算机语言就是不断的在描述现实生活中的事物。java中描述事物通过类的形式体现,类是具体事物的抽象,概念上的定义。对象即是该类事物实实在在存在的个体。

2.2 类与对象的关系

对象是类的实例,类是对象的抽象。

可以理解为:

  • 类就是图纸
  • 汽车就是堆内存中的对象

3. 类的定义

  • 生活中描述事物无非就是描述事物的属性和行为。
    • 如:人有身高,体重等属性,有说话,打球等行为。
  • Java中用类class来描述事物
    • 属性: 对应类中的成员变量。
    • 行为: 对应类中的成员函数。
  • 定义类其实在定义类中的成员(成员变量和成员函数)。
class Person {
	String name;
	int age;
	void speak(){
		System.out.println("My name is " + name);
		System.out.println("I am " + age + " years of age");
    }
}

4. 成员变量与局部变量的区别

4.1 成员变量

  • 成员变量定义在类中,在整个类中都可以被访问。
  • 成员变量随着对象的建立而建立,存在于对象所在的堆内存中。
  • 成员变量有默认初始化值。

4.2 局部变量

  • 局部变量只定义在局部范围内,如:函数内,语句内等。
  • 局部变量存在于栈内存中。
  • 作用的范围结束,变量空间会自动释放。
  • 局部变量没有默认初始化值。

4.3 成员变量初始化

当一个对象被创建时,会对其中各种类型的成员变量自动进行初始化赋值。基本数据类型初始化值为0,引用数据类型初始化值为null。

5. 创建对象,使用对象

class Car// 对这类事物进行描述Car
{
	String color = "red";
	int num = 4;
	void show() 
	{
 		System.out.println("color="+color+"..num="+num); 
	}
}

class CarDemo 
{ 
	public static void main(String[] args) 
	{ 	
		Car c = new Car();//建立对象 
		c.color = "black";//对对象的属性进行修改 
 		c.show();// 使用对象的功能。 
	}
	
}

6. 对象内存结构

6.1 对象的产生

Person p = new Person();
这句话先在堆内存中创建了一个对象,然后栈内存中创建一个变量引用了对象的地址。

在这里插入图片描述

Car c1 = new Car();
c1.color = "blue";	

6.2 对象的生命周期

对象的生命周期从new关键字创建时开始,到没有任何引用到达对象时结束(成为垃圾)。

7. 匿名对象

  • 我们可以不定义变量引用对象,使用new关键字创建对象后直接使用,这样的对象没有名字,所以叫匿名对象。
  • 匿名对象因为没有任何引用到达,在使用一次之后即成为垃圾。
  • 匿名对象是对象的简化形式
  • 匿名对象两种使用情况
    • 当对对象方法仅进行一次调用的时
    • 匿名对象可以作为实际参数进行传递
  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java语言程序设计(基础) PDF》是一本介绍Java语言基础知识和编程技巧的电子书。这本书主要分为七个部分,从基本的概念开始逐步讲解Java语言的各个方面。 第一部分介绍了Java的发展历史和编程环境的安装,以及Java程序的基本结构和执行过程。读者可以了解到Java语言的特点和运行原理。 第二部分介绍了Java的数据类型和变量,包括基本数据类型、引用数据类型和常量的使用方法。此外,还详细介绍了Java的运算符和表达式的使用。 第三部分是关于流程控制的内容,包括条件语句、循环语句和选择结构。通过学习这一部分,读者可以了解Java中的条件判断和循环执行的方法。 第四部分介绍了数组和方法的使用,包括数组的声明和初始化、数组的遍历和排序,以及方法的定义和调用。这些是Java程序设计中常用的基本工具。 第五部分是关于面向对象编程的内容,包括类的概念、对象的创建和使用,以及封装、继承和多态等面向对象的基本概念和技巧。 第六部分介绍了异常处理和文件操作的方法。Java提供了强大的异常处理机制,可以帮助程序员处理潜在的错误情况。同时,Java也提供了丰富的文件操作功能,可以方便地进行文件的读写操作。 最后一部分介绍了Java的图形用户界面和事件处理。这些内容可以帮助读者了解如何使用Java创建图形化界面,并且可以对用户的操作做出相应的响应。 总的来说,《Java语言程序设计(基础) PDF》是一本系统全面、内容详细的Java语言教材,适用于初学者和有一定编程基础的读者。通过阅读这本书,读者可以全面掌握Java语言的基本知识和编程技巧。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李熠漾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值