1.面向对象和面向过程
1.1 面向过程
面向过程思想思考问题时,我们首先思考“怎么按步骤实现?”并将步骤对应成方法,一步一步,最终完成。面向过程的方法写出的程序就是一种“蛋炒饭”,这份蛋炒饭,如果你想吃外婆菜炒饭的话,你就只能重新做一份出来,所以就比较固定,同理,面向过程的程序,耦合度较高,修改起来麻烦
1.2 面向对象
面向对象写出来的程序,就是一种盖码饭的感觉。想吃什么在饭的基础上加上码子就行,也不用全部重来,又不喜欢的菜就直接挑出来,剩下的喜欢的部分继续吃就完事
因此,面向对象可以帮助我们从宏观上把握、从整体上分析整个系统。 但是,具体到实现部分的微观操作(就是一个个方法),仍然需要面向过程的思路去处理。
我们千万不要把面向过程和面向对象对立起来。他们是相辅相成的。面向对象离不开面向过程!
2 理解类和对象
类可以看做是一个模版,或者图纸,系统根据类的定义来造出对象。我们要造一个汽车,怎么样造?类就是这个图纸,规定了汽车的详细信息,然后根据图纸将汽车造出来。类:我们叫做class。
对象:我们叫做Object,instance(实例)。以后我们说某个类的对象,某个类的实例。是一样的意思。
类与对象就好比,用月饼摸具做月饼,月饼月饼模具是类,使用月饼模具制作的一个个月饼就是对象
总结
类可以看成一类对象的模板,对象可以看成该类的一个具体实例。
类是用于描述同一类型的对象的一个抽象概念,类中定义了这一类对象所应具有的共同的属性、方法。
3.构造方法
对于一个类来说,一般有三种常见的成员:属性field、方法method、构造器constructor。这三种成员都可以定义零个或多个。
构造方法(constructor)也叫构造器,用于对象的初始化。构造器是一个创建对象时被自动调用的特殊方法,目的是对象的初始化。构造器的名称应与类的名称一致。Java通过new关键字来调用构造器,从而返回该类的实例,是一种特殊的方法。
声明格式:
[修饰符] 类名(形参列表){
//n条语句
}
例:
public class Computer {
//成员变量
private String cpu=“Intel”;//cpu
private String memory;//内存
private String mainBoard;//主板
private String keyBoard;//键盘
//构造方法
public Computer(){
System.out.println("--------Computer()--------");
cpu = “AMD”;
}
构造器4个要点:
构造器的方法名必须和类名一致! 构造器通过new关键字调用!!
构造器虽然有返回值,但是不能定义返回值类型(返回值的类型肯定是本类),不能在构造器里使用return返回某个值。
如果我们没有定义构造器,则编译器会自动定义一个无参的构造方法。如果已定义则编译器不会自动添加!
构造方法也是方法,只不过有特殊的作用而已。与普通方法一样,构造方法也可以重载。