Java基础教程——类和对象

视屏讲解:https://www.bilibili.com/video/av48272174


面向过程 VS 面向对象

面向过程:强调步骤。
面向对象:强调对象。
面向对象的特点就是:隐藏具体实现的细节,将复杂的事情简单化。


代码中的面向对象

import java.util.Arrays;
public class 代码中的面向对象 {
	public static void main(String[] args) {
		int arr[] = { 1, 2, 3 };
		// 面向过程
		for (int i = 0; i < arr.length; i++) {
			System.out.println(arr[i]);
		}
		// 面向对象
		System.out.println(Arrays.toString(arr));
	}
}

面向对象的好处

大多数观察者相信,通过面向对象编程,开发效率至少提高了5倍,可靠性和理解程度也大为提高。

Reusable:可重用型---UP

Extensibility:可扩展性---UP

Maintainability:可维护性---UP

什么是面向对象?

ALGO语言的设计者霍尔,曾发表演讲说:

our thought ,language ,and actions are based on the designation, description,and manipulation of these objects,either individually or in relationship with other objects.

沿着这样的一个思路方向,人们把现实世界的物,(通过抽象)映射到计算机中,建立计算机可以处理的模型。

object → model
现实世界的物 → 计算机处理的模型

面向对象语言发展


类和对象的关系

  • 类是对一类事物的描述,是抽象的;
  • 对象是类的实例,是具体的。
  • 类是对象的模板,对象是类的实例。譬如按照设计说明书生产具体产品。

类:class
对象:object
实例:instance

已经见过的类和对象:

对象
Scanner sc =new Scanner(System.in);
String s1 = "";
String s2 = new String();

自定义类:

public class 类和对象 {
	public static void main(String[] args) {
		// 创建对象:对象是类的实例
		Car car = new Car();
		car.color = "白色";
		car.start();
	}
}
// 定义类:类是一个概念
class Car {
	// 成员变量:属性
	String color;
	// 成员方法:行为(注:成员方法没有static关键字)
	void start() {
		System.out.println(color + "汽车启动");
	}
}

上述代码的内存解释:
https://www.cnblogs.com/tigerlion/p/10701973.html

原文地址:https://www.cnblogs.com/tigerlion/p/11179045.html