面向对象讲解

目录

👓面向对象的代码实现:

示例一:

🥇 代码:

🥇结果:

 示例二:

🥇 代码:

🥇结果:

👓 构造方法:

特性:

🥇1.方法名必须与类名相同

🥇2.没有返回值,也不能写void

🥇3.构造方法可以重载 

注意:

 


描述:

        Java是一门面向对象的编程语言,我门之后写的代码也都是基于面向对象来实现的,主要依靠对象间的交互来完成实现的,而非面向过程。那我们该怎么理解这个面向对象呢?面向对象和面向过程有什么区别?该如何实现面向对象?下面我通过据一些例子,希望能帮助大家理解,当然作为初学者的我们,理解这个不是一时半会就能完全懂的,我们还需要通过后续的学习和代码实现来慢慢消化~~

面向对象和面向过程的区别:

        面向对象和面向过程是两种完成任务的方式方法,这里我们拿洗衣服这个任务来通过两种方式实现。

面向过程:

        使用面向对象的方式来完成洗衣服这个任务,就跟名字一样,我们更多的精力是放在如何洗衣服的这个过程上,这些过程就是核心,同样,这种方式中间的过程不能有一步出错,所以面向过程来实现的代码的维护与扩展非常麻烦与困难!! 

面向对象:

        还是洗衣服这个任务,为了完成洗衣服,我们可以抽象出来人,洗衣机,衣服,洗衣粉这4个类,分别实例出对应的对象,通过对象之间的交互来完成洗衣服整个任务,这样洗衣服的整个过程就变成:

人将衣服和洗衣粉放入到洗衣机里,然后启动洗衣机,洗衣机完成洗衣服和烘干的任务

        以面向对象方式来进行处理,就不关注洗衣服的过程,只需要将衣服放进洗衣机,倒入洗衣粉,然后启动洗衣机就可以完成洗衣服的任务,具体洗衣机是怎么来洗衣服,如何来甩干的,我们就不用去关心了

 注意:

        面向过程和面相对象并不是一门语言,而是解决问题的方法,没有那个好坏之分 ,但是面向对象相较于面向过程,代码更简洁更便于管理和扩展,而面向过程相较于面向对象而言,代码逻辑更清晰,但是不方便管理,这一点我们要清楚。

面向对象的代码实现:

示例一:

        字如其名,以这样的方式来完成一个任务,我们需要操作对象,通过对象内部的方法,进行对象之间的交互来完成任务。那么对象是什么,简单来说,对象就是一个实体,比如人,猫,狗,洗衣机等等...... 而类就是来描述一个对象的,通过类来抽象出这个对象的属性(尺寸,类型,名字等等......)和方法(是干嘛的,能干嘛......)

 代码:

public class Person {
    //属性
    public String name;
    public int age;
    public int weight;
    //方法(行为)
    public void eat(){
        System.out.println(name+"正在吃米饭");
    }
    public void sleep(){
        System.out.println(name+"正在睡觉");
    }
}
class Main2{
    public static void main(String[] args) {
        Person person = new Person();
        person.name = "张三";
        person.eat();
        person.sleep();
    }
}

结果:

 示例二:

        我们再抽象出一个狗的对象,首先我们要想一想要抽象的这个对象有哪些属性,有哪些方法(行为)

     想到了有哪些属性和行为,就可以通过类来描述一个对象,再通过对象之间的交互完成一系列的任务。

 代码:

class Dog{
    public String name;//姓名
    public int age;//年龄
    public String color;//毛发颜色

    public void eat(){
        System.out.println(name+"正在吃狗粮");
    }
    public void barks(){
        System.out.println(name+"正在汪汪叫");
    }
}
class Main2{
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.name = "大黄";
        dog.age = 3;
        dog.color = "黄";
        dog.eat();
        dog.barks();

    }

结果:

 构造方法:

构造方法是一个特殊的成员方法,用来帮助我们对对象的初始化,在上面两个示例里,我们都是通过在main方法里通过 引用.属性 的方式来对对象进行初始化的,那么有没有不用这么麻烦,在实例化对象的时候就对对象完成初始化,那么就需要借助构造方法。。

 

使用构造方法初始化:

 

特性:

1.方法名必须与类名相同

 

2.没有返回值,也不能写void

 

3.构造方法可以重载 

注意:

        即使我们不写构造方法,编译器也会自己提供一个不带参数的构造方法,但是如果我们写了构造方法,编译器就不会再提供构造方法。。

 

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值