「Java」Java基础————对象


「Java」Java基础————对象
文章图片
「Java」Java基础————对象
文章图片
「Java」Java基础————对象
文章图片
「Java」Java基础————对象
文章图片
「Java」Java基础————对象
文章图片
「Java」Java基础————对象
文章图片
「Java」Java基础————对象
文章图片
「Java」Java基础————对象
首先 , 我们说下面向对象编程 。 说的简单一点 , 就是把所有的东西都看作是一个对象 。 那对象又是什么呢?

在我看来 , 对象就是用来解释抽象概念或者将实际抽象的东西 , 好吧 , 我编不下去了 , 我也是培训机构出身 , 理论要我命 , 对象具体是个什么东西 , 百度吧 , 我说实际的代码好了 。


----------------------------------------------------------------------


假设 , 我们现在要用Java将一直猫的数据储存到电脑里 。 那我们应该纪录那些东西呢?
颜色、年龄、性别、名字、品种等等
我们的代码就是这样的 , 创建了这几个变量 。 那我们立刻就要把数据写到磁盘里吗?不 , 我想等一下再存 , 拿这些数据怎么办 , 就让他放在这儿?也行 , 但这样很杂乱 , 既然都是猫 , 那为什么我们不把他放在一个变量里呢?比如写一个json?这样?在面向对象中 , 我们通常会把描述一个事物的东西 , 组合在一起 , 成为一个对象 。 比如这里 , 我们是要描述一只猫 , 那我们就可以创建一个猫的对象 。 【「Java」Java基础————对象】
这就是一个对象的雏形 。 当我们要使用到这些数据时候 , 我们就可以创建这个对象 , 并拿到那些描述在对象中 , 我们把刚才的描述(颜色 , 年龄…)称为属性或者字段 。 刚才我们描述了具体的一只猫 , 那现在我要描述猫这个物种 , 怎么办呢?我们想一想 , 我们刚才描述一只猫的时候 , 我没给他的每一个属性都赋值了 , 但现在我要描述猫这个物种 , 在我见到某一个猫之前 , 我并不知道他的颜色 , 品种之类的 , 那我不给属性赋值不久行了?就像这样 。 当我们看到一只猫 , 知道了他的具体属性 , 我们就可以在程序中创造出一只猫 。 我觉得这样的创建方式 , 很麻烦 。 正好 , Java有提供一种叫做构造方法的东西 。 然后我们创造一只猫就可以这样不过当我们这样写之后 , 刚才的创建方式就不正确了其实很好理解 , 打个比方 。 人类本身是可以顺产出生的 , 但你觉得不爽 , 你想要破腹产 。 然后你准备好工具 , 把孕妇的肚子破开了 , 这时候 , 你又觉得麻烦 , 然后你告诉孕妇 , 你还是顺产吧 , 我先走了 。 你看会不会被打?Java默认提供会有一个构造方法 , 如果我们自己定义了 , 那么编译器就不会给我们提供这个默认的方法 。 关于构造方法 , 同样可以像普通方法一样重载 。 我们描述了猫的基本属性 , 那我们怎么描述他们的行为呢?比如猫会抓老鼠 , 那么抓老鼠这个行为怎么描述呢?我之前说过 , 方法就是功能 。 猫抓老鼠 , 可不可以看着是猫的一种功能呢?就像这样 。 最后说下关于对象的规范 。 在Java规范中 , 属性是不应该公开的 。 这么说吧 , 你有一只很可爱的白色小猫 , 放在朋友家养几天 , 然后他给你染成了想鹦鹉一样的颜色 , 你觉得你会提刀砍他么?也就是说 , 我们不能在调用的时候 , 直接操作属性如果朋友很想给你的猫染毛 , 那安全一点的做法应该是怎样的呢?他应该先问你 , 我能把你的猫的染成鹦鹉么?你要是觉得还行 , 好的 , 那就染吧 。 你要觉得 , 我操 , 这么丑 , 那就坚决不能染 。 面对这种情况 , 我们需要给属性加权限 。 之前我们知道了public代表的公开的 , 现在我们说一次新的关键字 , private(私有的) 。 我们给属性加上这个关键字后 , 除了这个对象本身 , 其他地方是不能访问到这个对象的 。 当我们这样写的时候 , 我们刚才的方法就不能在访问到猫的属性了那朋友应该怎么询问你呢?在Java规范中我们使用get/set方法 , 也就是这样Java规范中 , get/set方法的名字应该是:get+首字母大写+其他字母不变 , set+首字母大写+其他字母不变 。 (type:getTypecatColor:getCatColor)当我们将代码汇总:public class Cat {private String color;private int age;private String sex;private String type;public String getColor() {return color;public void setColor(String color) {this.color = color;public int getAge() {return age;public void setAge(int age) {this.age = age;public String getSex() {return sex;public void setSex(String sex) {this.sex = sex;public String getType() {return type;public void setType(String type) {this.type = type;public Cat() {public Cat(String sex String type) {super();this.sex = sex;this.type = type;public Cat(String color int age String sex String type) {super();this.color = color;this.age = age;this.sex = sex;this.type = type;public void zhualaoshu(){System.out.println(\"这只猫正在抓老鼠\");我们就将这个Java类称为猫类 , 由他创造出来的 , 就是猫的对象 。 我们可以用对象来描述一个实际的事物 , 也可以用对象来描述一个我们想象的东西 。 比如说我们要描述一个SB , 他的属性是白痴程度 , 战斗力 , 他会装逼 , 搞笑


推荐阅读