什么是对象
类是对公共属性和行为的抽取。对象是类的实例化。
万物皆对象。一个类可以创建无数个对象。
比如:猫是一个类,有出生地点、年龄、尾巴长度、颜色、性格、主人是谁等属性。那么小明养的猫(具体到某一只)就是一个对象,它出生再小明家、年龄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类就很不合理了。