相信很多初学编程的小伙伴对于“面向对象”感到很困惑,而网络上像百度和谷歌的解释更是如同天书一样。不用担心!此篇文章会从一个初学者的角度搭配生动的例子来解释什么是面向对象和一些相关的知识。
一,什么是面向对象?
据百度说,”面向对象(Object-Oriented Programming,OOP)是一种将把相关的数据和方法组织为一个整体来看待,从更高的层次来进行系统建模,更贴近事物的自然运行模式“。
举一个很简单的例子。
假如我们要冰冻一只大象。
1,分解问题为几个对象:“人”对象和“冰箱”对象。
2,针对冰箱对象开发几个方法,例如“照明方法”,“冰冻方法”,“关闭照明方法”,等。
3,针对人对象开发几个方法,例如“开门方法”,“放大象方法”,“关门方法”,等。
4,最后我们就可以执行这些方法来解决问题:
人.开门;
冰箱.照明;
人.放大象;
冰箱.开启冰冻;
人.关门;
冰箱.关灯;
这一套步骤下来,我们成功的将大象冰冻了起来,用面向对象的方法解决了问题。
二,对象与类
在初学Java的过程中,我们经常会听见类(class)和对象(object)的概念。据我们上面的例子,“人”和“冰箱”就是对象,而构造对象的“模具”就是类。在上面的例子中,我们可以写一个人类和冰箱类,然后把相关的方法分门别类地放进去,最后在main方法里构建人和冰箱的对象后执行方法就可以了!
在这个过程中,我们需要实现的是将现实逻辑转化为代码逻辑,简单来说就是写代码。而代码简单来说就是计算机指令,类似用遥控杆遥控玩具车一样,我们用代码去操控计算机来实现各种功能和解决问题。
1. 类的结构
要创造一个类,我们首先写一个权限访问修饰符,例如public,private。然后加上关键词class。最后跟上类名和一对大括号。注意:类名必须和文件名相同,不然就会报错。
human.java
public class human {
}
2. 类的组成元素
在一个已经创建好的类里面,有着各种名词和动词。首先名词是用来表达某些东西的,所以名词包含变量,常量,静态变量,静态常量等。而声明的格式为属性的数据类型+属性名。
String name;
final int HEIGHT=188;
final在这里表明这是一个常量,换句话说HEIGHT在后面的代码中无法被修改。
而动词就代表各种方法,例如普通方法,静态方法,final 方法等。
要声明一个方法,格式为返回值类型+方法名(参数类型 参数变量名){}
public void setName(String name) {
this.name = name;
}
这个方法就会将变量name设置为括号里面的参数。
3. static关键词
static代表静态的。这个关键词可以用来修饰变量,常量,方法,和代码块。他具有唯一性,且不属于对象。常见的有静态常量,静态变量,静态方法。
public class human {
private static int nextId = 1;//静态变量
public static final double PI = 3.14159265358979323846;//静态常量
//静态方法
public static getNextAge(){
return nextAge;
}
}
4. final关键词
用final可以使修饰物变成一个常量,要注意的是当其修饰方法时,该方法不能被重写。而修饰类时,该类不能被继承。
本篇幼儿园JAVA教程到这里就结束了,希望能帮到每一位小伙伴少掉一根头发!!!!