面向对象的属性
今天我们就学习到了JAVA中的的最重要的一点咯那就是!!面向对象!!面向对象感觉比较抽象需要我们理解的透彻;我们先来看看什么是面向对象吧!
在我们日常生活中我经常会看到
中介商户门前贴的户型图吧,它就是对实体房子的一个抽象,把一个东西抽象为了一个图,而这个抽象的过程就可以理解为面向对象编程,将实物抽象。
假如我们现在有一个颜色是蓝色的大房子,里面有一间卧室,这两个特征都是房子本身具有的就理解为是房子的属性;如果我们想要把房间里的灯打开呢?打开灯是一个动作;
那我们先来抽象以下房间的属性;
public class House{
//房子是蓝色的
public String color="蓝色";
//房子有一间卧室
public int bedRooms=1;
}
在这我们看到和以前不同的是:变量前加了一个public这就表示这个是公共变量,暂理解加上public全部代码都可以使用这个属性了。这就是对房间属性的抽象,(小黄鸡的理解就是将题目给的条件用代码敲在上面。用代码来表示给的条件),那接下来就用一段代码来把这个房间给的两个属性和一个动作用代码表示出来:
public class House{
//房子是蓝色的
public String color="蓝色";
//房子有一间卧室
public String bedRooms=1;
//打开房间灯
public void turnLightOn(){
}
}
在这里所有的条件都是在House这个大框架下写出来的,而里面的条件就要分别来表达。
在这里和之前还有一点不同的就是public后面没有加static了,这是因为static时表示的是静态方法,加上他就是把这个值固定了,不能再发生变化了。我们后面还会仔细学习!
实例化对象
实例化对象重在理解,我写的都是本鸡自己的理解和课程讲解的会有所不同。
假如有三间房间,分别是大房子,中房子,小房子。先看一下实例化的写法:
//大房子
House bigHouse = new House();
//中房子
House midHouse = new House();
//小房子
House smallHouse = new House();
这就是将他们实例化,实例化呢就是分别给这三个房间一个单独的存储空间,来存放他们里面的内容。我们之前写的动作是开灯,在未实例化的时候有三间房子,那么开那间房子的灯呢?我们就需要进行实例化,将三个房子分别给一个存储空间,在使用条件的时候直接将条件放在对应的位置就OK了;
我们来写一下,打开小房子的灯!
smallHouse.turnLightsOn();
我们可以看到在开灯动作前我们将实例化后的smallHouse添加上了,这就指明了开小房子的灯
这就是小黄鸡学习JAVA第十二天的内容对“面向对象”的初步理解,学习路上大家一起作伴,有什么问题也希望各位大佬能够及时给我提出和给予我帮助,让我们一起冲冲冲!
小黄鸡:“抽象的理解还是有点点模糊呀!”