我们都知道Java是一门面向对象的语言,在这里我们所说的面向对象是基于面向过程而言的,举一个生活中的例子:人要吃饭,如果从面向过程的角度来看,要先买菜,洗菜,炒菜,最后才能吃到饭;如果用面向对象的角度来看呢?直接叫外卖,让商家帮你做好,我们要做的只是通知商家做饭。这个例子反映到我们的程序也是一样的,每一个程序都有要实现的功能,当我们只需要实现少数功能时,看起来很简单,但是当我们的需求增多,要更改的地方也增多时,我们再来使用这些具体的功能就比较复杂了,所以我们把这些功能步骤打包在一起,封装起来,等到我们要用的时候,加载包含这些功能的类即可,这就是面向对象的思想。
面向对象思想的特征:
a.封装
b.继承
c.多态
一.类与对象的介绍
类:类是Java中最基本的单位,他体现了封装的思想,我们描述一个事物,这一个事物有他的属性和行为,用类来解释,就是类的成员变量和成员方法,类可以理解成一组相关的属性和行为的集合。
成员变量:定义在类中方法外中的变量
成员方法:同以前定义方法相同,就是去掉static修饰的方法
对象:类的实例化,表示该类事物的具体实现
例如:
我们定义一个手机类,手机有品牌,有价格,可以打电话,可以发信息,这就是一个手机类,我们创建一个对象,这个对象有它的品牌名,价格,各种功能,这就是类的具体实现。
package org.westos.demo;
public class Phone {
String name;
int price;
public void Call(){
System.out.println("打电话");
}
}
public class Test {
public static void main(String[] args) {
Phone phone = new Phone();
phone.name="华为";
phone.price=3000;
phone.Call();
}
}
通过上面的例子我们也能了解到,如何创建一个类的对象,有如何调用这个类的成员变量和成员方法。
创建对象:类名 对象名=new 类名();
使用成员变量:对象名.成员变量;
使用成员方法:对象名.成员方法();
二.对象的理解
一个对象
两个对象
三个引用两个对象:指三个引用,其中有两个对象的引用指向两个地址
三.成员变量和局部变量的区别
1.在类中的位置不同
成员变量定义在类中方法外
局部变量在方法定义中或者方法声明中
2.在内存位置不同
成员变量在堆内存中
局部变量在栈内存中
3.生命周期不同
成员变量随着对象的创建而存在,对象消失则消失
局部变量随着方法的调用而存在,方法调用完毕而消失
4.有无默认值
成员变量有默认值
局部变量无默认值