Java中的类与对象

我们知道,Java是一门面向对象的编程语言,那么究竟是什么是面向对象呢?对象又是什么呢?本编博客,将会向大家进行介绍。

一、面向对象

1、理解:我们可以和面向过程对比着进行理解,例如,如何把一个大象装进冰箱?1、打开冰箱 2、存储大象 3、关闭冰箱,整个过程是由我们进行操作,这就是面向过程。而面向对象,我们可以这样想,冰箱具有打开,存储,关闭的属性,所以我们整个过程只需要找到相应的冰箱,然后调用冰箱,由冰箱完成这一切即可,如下图。

Java中的类与对象

2、面向对象的特点:

1)符合现在人们思考的方式

2)可以把复杂的问题简单化

3)让人们从执行者,变成现在的指挥者

 

二、类与对象

1、定义:

类:事物的描述(定义一个类,其实就是在定义类中的 成员变量<-->属性,成员函数<-->行为)

对象:该类事物的实体,在Java中是通过new来创建的

2、具体示例

//定义一个类,不需要要主函数,因为只是用来描述一类事物,不用独立运行
class Car
{
	int num;//创建成员变量
	String color;
	void run()//创建成员函数
	{
		System.out.println(num+"...."+color);
	}
}

class  Test
{
	public static void main(String[] args) 
	{
		//在计算机中创建一个car示例。通过new关键字
		Car c = new Car();//c就是一个类类型的引用变量,指向了该类的对象
		//要使用对象中的内容,可以通过  对象.成员 的形式来完成调用
		c.num = 4;
		c.color = "red";
		c.run();
	}
}

运行结果

Java中的类与对象

3、上述代码在内存的体现

如果对堆内存和栈内存的不理解的,可以看一下我的这一篇博客:

https://blog.****.net/qq_41819988/article/details/88542485

Java中的类与对象

 

三、成员变量和局部变量的区别

我们知道局部变量是存储在栈内存当中的,成员变量是存在堆内存中的,那么类中创建的成员变量又和局部变量有什么区别呢?具体的区别如下:

区别1:

成员变量定义在类中,整个类中都可以访问

局部变量定义在函数,语句,局部代码块中,只在所属区域有效

区别2

成员变量存在于堆内存的对象中

局部变量存在于堆内存的方法中

区别3:

成员变量随着对象的创建而存在,随着对象的消失而消失

局部变量随着所属区域的执行而存在,随着所属区域的结束而释放

区别4:

成员变量都有默认的初始化值

局部变量都没有默认初始化值