【Java笔记】7面向对象的理解

什么是对象

类是对公共属性和行为的抽取。对象是类的实例化。
万物皆对象。一个类可以创建无数个对象。
比如:猫是一个类,有出生地点、年龄、尾巴长度、颜色、性格、主人是谁等属性。那么小明养的猫(具体到某一只)就是一个对象,它出生再小明家、年龄2岁、尾巴15cm、颜色是白色、性格温顺、主人是小明,这些属性是确定的。其他同理。

面向对象

面向对象,就是以对象为中心的编程思想。
将描述事物的属性和可能用到的行为封装起来,用什么拿什么,就很方便。

定义一个对象

定义一个人类。定义一个狗类

class people{
    String name;
    int age;
    String sex;

    public void sing(){
        System.out.println(name+"唱了一首歌");
    }

    public void goSchool(){
        System.out.println(age+"岁的"+name+"被送到了学校");
    }
}

public class dog {
    String name;
    int age;
    people master;

    public void walk() {
        System.out.println(name+"被"+master.name+"拉去散步了");
    }

    public void bark() {
        System.out.println(name+":汪汪汪");
    }
}

然后造个人,再造个狗吧。

class demo{
    public static void main(String[] args){
        people Tom=new people();
        Tom.name="Tom";
        Tom.age=18;
        Tom.sex="女装大佬";

        //人造好了,做点事情吧
        Tom.sing();
        Tom.goSchool();

        //再造条狗吧
        dog dog = new dog();
        dog.name="旺财";
        dog.age=2;
        dog.master=Tom;//这里狗的主人用上面的Tom,dog.master有Tom的一切信息

        //做点事情吧
        dog.walk();
        dog.bark();
    }
}

结果:
Tom唱了一首歌
18岁的Tom被送到了学校
旺财被Tom拉去散步了
旺财:汪汪汪

以上可以得出,创建一个对象,给这个对象的属性一个一个进行赋值,当把这个对象进行传递时,可以将里面的东西都打包递过去,这就很省事了。

总之就是合适的人做合适的事,bark方法写到people类就很不合理了。

你可能感兴趣的:(Java)