面向对象和面向过程的区别:
面向对象和面向过程都是对软件分析、设计和开发的一种思想,它指导着人们以不同的方式去分析、设计和开发软件。C语言是一种典型的面向过程语言,Java是一种典型的面向对象语言。
面向过程适合简单、不需要协作的事务,重点关注如何执行。
面向对象可以帮助我们从宏观上把握、从整体上分析整个系统。
面向对象和面向过程思想的总结:
都是解决问题的思维方式,都是代码组织的方式。
面向过程是一种“执行者思维”,解决简单问题可以使用面向过程。
面向对象是一种“设计者思维”,解决复杂、需要协作的问题可以使用面向对象。
面向对象离不开面向过程:
宏观上:通过面向对象进行整体设计。
微观上:执行和处理数据,仍然是面向过程。
对象和类的详解:
类可以看成一类对象的模板,对象可以看成该类的一个具体实例。
类是用于描述同一类型的对象的一个抽象概念,类中定义了这一类对象所具有的共同的属性、方法。
类:class。对象:Object,instance(实例)。某个类的对象,某个类的实例,是一样的意思。
对于一个类来说,有三种成员:属性(field)、方法(method)、构造器(constructor)。
属性(成员变量):
属性用于定义该类或该类对象包含的数据或者说静态特征。属性作用范围是整个类体。在定义成员变量时可以对其初始化,如果不对其初始化,Java使用默认的值对其初始化。
构造方法(构造器):
构造器的4个要点:
构造器通过new关键字调用。
构造器虽然有返回值,但是不能定义返回值类型(返回值的类型肯定是本类),不能在构造器里使用return返回某个值。
如果没有定义构造器,编译器会自动定义一个无参的构造方法,如果已定义则编译器不会自动添加。
构造器的方法名必须和类名一样。
构造方法的重载:
构造方法也是方法,与普通方法一样,构造方法也可以重载。