文章目录
引言:对象?什么对象?
想必大家已经知道,我也有对象了。但我这个对象,和一般人认为的对象或许有点差异。
一般人认为的对象:
我眼中的对象:
好了,不开玩笑了。我们直接进入正文。
本篇博客将讲解Java中的类和对象
初识类和对象
在了解类和对象之前,我们先来了解一下面向过程和面向对象。
面向过程和面向对象
面向过程注重的是过程,在整个过程中所涉及的行为,就是功能。
例如洗衣服,如果是面向过程的话,那就得进行下面的步骤:
而 面向对象注重的是对象,也就是参与过程所涉及到的主体,是通过逻辑将一个个功能实现连接起来。 例如同样是洗衣服,如果是面向对象的话, 那就将衣服和洗衣粉放到洗衣机即可,而洗衣机就是一个对象。
C语言是面向过程的 ,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。
JAVA是基于面向对象的 ,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。
面向对象的概念
-
面向对象是思考问题的一种思考方式,是一种思想。比如:概念与实例、理论与实践等等。
-
类就是一类对象的统称。对象就是这一类具体化的一个实例。
-
面向对象的好处:将复杂的事情变简单了,只要面对一个对象就行。
面向对象的设计
面向对象设计把握一个重要的经验:谁拥有数据,谁对外提供操作这些数据(私有)的方法!被动的一方是数据的拥有者,主动的一方是执行者。开发时:找对象,建对象,用对象,并维护对象之间的关系。
类和对象的关系
类就是一类对象的统称。对象就是这一类具体化的一个实例。
简单的例子:我们做月饼的模子就是一个类,而通过这个模子可以做出月饼,那么在这个例子当中,类就是那个模子,而月饼就是那个对象,所以月饼就是一个实体。一个模子可以实例化无数个对象。
总的来说:类相当于一个模板,对象是由模板产生的样本。一个类,可以产生无数的对象。
因此, 面向对象就是用代码(类)来描述客观世界的事物的一种方式,一个类主要包含一个事物的属性和行为。
类和类的实例化
类
类的基本语法
// 创建类
class <class_name>{
field;//成员变量
method;//成员方法
}
class为定义类的关键字,className为类的名字,{}中为类的主体。成员变量是定义在类中、方法外的变量。成员方法是定义在类中的方法。
代码示例
例如:
class Person {
//成员变量
public int age;
public String name;
public String sex;
//成员方法
public void eat() {
System.out.println("吃饭");
}
}
类的实例化
用类类型创建对象的过程,称为类的实例化
new 关键字用于创建一个对象的实例 ,例如:
class Person {
public int age;
public String name;
public String sex;
public void eat() {
System.out.println("吃饭");
}
}
public class TestDemo {
public static void main(String[] args) {
//类型 引用变量 = 对象
Person person = new Person();//实例化一个对象
}
}
一个类可以实例化多个对象 ,例如:
Person person1 = new Person();
Person person2 = new Person();
Person person3 = new Person();
使用 . 来访问对象中的属性和方法 ,例如:
person1.age = 10;
person2.eat();
类的成员
字段/属性/成员变量
在类中,但在方法外部定义的变量,这样的变量我们称为 “字段” 或 “属性” 或 “成员变量”。 这个变量的作用是用于描述一个类中包含哪些数据。
我们可以看看下面这段代码:
class Person