保姆级讲解类与对象

一、面向对象的初步认识

1、什么是面向对象?

面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。而Java就是一门纯面向对象的语言(Object Oriented Program,简称OOP),在面向对象的世界里,一切皆为对象。

2、面向过程和面向对象的区别?

以洗衣服为例
(1)面向过程(关注洗衣服的过程): 把衣服放进一个容器里面,倒上洗衣液——放水——搓衣服——拧干——过水——拧干——再过水——拧干

(2)面向对象(利用对象来形成结果): 对象:人,洗衣机,衣服,洗衣液
洗衣服的过程是:人将衣服放洗衣机里面,然后倒入洗衣液,开动洗衣机,洗衣机自动就会洗好衣服并且甩干。
整个洗衣过程主要是由这4个对象之间交互完成的,并不需要关心衣服是怎样洗好的,是怎样弄干的,要的只是对象之间交互完成后的一个结果。

二、类的定义和使用

面相对象程序设计关注的是对象,而对象是现实生活中的实体,比如:洗衣机。但是洗衣机计算机并不认识,需要开发人员告诉给计算机什么是洗衣机。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/4c5e56dfec2e4ad7b54ac4c78c01e2b8.png)

以上便是对洗衣机的简单描述,该过程称为对洗衣机对象(实体) 进行抽象(对一个复杂事物的重新认知),但是这些简化的抽象结果计算机也不能识别,开发人员可以采用某种面相对象的编程语言来进行描述,比如:Java语言。

那么Java语言是如何对洗衣机进行简单的描述呢?这就要用上Java中的类了。
类是用来对一个实体(对象)来进行描述的,主要描述该实体(对象)具有哪些属性(外观尺寸等),哪些功能(用来干啥),描述完成后计算机就可以识别了。
以洗衣机为例:它是一个对象,在Java中可以看成是一个类。
它的属性有:产品品牌、产品型号、洗涤功率…
它的功能有:洗衣,烘干、定时…

在这里插入图片描述
实现以上代码,计算机便已经基本认识到了这个“洗衣机”了。这个洗衣机有品牌、有型号,有着洗衣、脱水、定时的功能。

3、类的实例化(用类类型创建对象的过程,称为类的实例化)

虽然计算机已经初步认识到“洗衣机”这个对象了,但这只是一个简单的概念,并不能做出什么事情。就相当于建房子,只有一个草图,并没有真材实料地进行建造。那么该如何利用这个草图来建造房子呢?那就要进行类的实例化了。
定义了一个类,就相当于在计算机中定义了一种新的类型,与int,double类似,只不过int和double是java语言自带的内置类型,而类是用户自定义了一个新的类型,比如上述的:WashingMachine类,就是自定义的一个新的类型。有了这些自定义的类型之后,就可以使用这些类来定义实例(或者称为对象)。值得注意的是:类是对该对象进行一个简单的描述,而类实例化后才会真正产生这个对象(才会在堆中开辟空间)。
在这里插入图片描述
在这里插入图片描述
值得注意的是:
1、main方法是一个程序的入口,所以对象的实例化一般都是在main方法里面进行的。
2、一个类可以实例化出多个对象,每次实例化一个对象便会在对堆上面开辟一段新的空间
3、使用 . 来访问对象中的属性和方法

整合以上知识,用Java代码实现洗衣

public class WashingMachine {
     String brand; // 品牌
     String type; // 型号
   public void washClothes(){ // 洗衣服
       System.out.println(brand+"洗衣机"+"在洗衣服");

}

    public void dryClothes(){// 脱水
        System.out.println(brand+"洗衣机"+"在脱水");
}

    public void setTime() { // 定时
        System.out.println(brand+"洗衣机"+"定时");
       }
    public static void main(String[] args) {
        WashingMachine w1 = new WashingMachine();
        WashingMachine w2 = new WashingMachine();
            w1.brand = "海尔";
            w1.type = "A";
            w2.brand = "小天鹅";
            w2.type = "B";
            w1.washClothes();
            w2.dryClothes();
    }
}

在这里插入图片描述
这里补充几点:

  1. 一般一个文件当中只定义一个类
  2. main方法所在的类一般要使用public修饰(注意:Eclipse默认会在public修饰的类中找main方法)
  3. public修饰的类必须要和文件名相同
  4. 每一个文件只存在一个public修饰的类
    以上便是我要讲解的内容啦!希望能对大家有所帮助!!!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值