注:关键字用蓝色标注,文中提及的重要词汇用红色标注,文中提及的容易被程序员忽略的概念用橙色表示。
说道Java对象:
1.我们首先想到了private,protected,public三个关键字,为何会有这三个字眼?作用为何?
Java对象三大特征:封装、继承、多态,而这三个字眼是用来实现良好的封装性。
2.extends关键字,是用来实现继承性,其主要目的是为了实现代码复用。实现复用有两种形式:组合和继承,两者的区别在于,继承实现复用时,子类对象可以直接赋给父类变量,这个变量具有多态性,代码更加灵活。而利用组合关系,则不具备这种灵活性。
举例:
3.static修饰修饰的成员不能访问没有static修饰的成员。Java类有三种常见成员:构造器、成员变量和方法。比如:static修饰的方法不能调用没有static修饰的变量。换言之就是没static修饰看似降低了成员的级别。为啥降低了级别?因为static修饰的成员属于类本身而不属于此类的单个实例,而不用static修饰的成员变量则属于单个实例而不属于该类。属于类本身的成员变量就像是人类所共有的特征,自然降低了级别。所以使用static修饰的变量可以被类和实例调用,而没有static修饰的变量,只能通过实例调用。成员变量是由field意译过来,所以eclipse当中如果没有给变量添加类型,自动修复中经常出现create local variable XX和 create field XX,两者的区别在于create local variable将直接在出错的变量前添加变量类型,而create field XX会在类的成员变量域处添加变量类型。简言之,create field XX 会使代码更加规矩化。
4.new方法用来调用构造器,从而返回一个实例,我们所操作的都是实例。实例与类的区别就如同个人和人类的区别。说道构造器,是类构造实例(对象)的根本途径,如果程序员不自己构造,那么系统会提供默认构造器,如果自己构造了,系统则不再默认提供。构造器不需要填写返回值,因为构造器总是返回类本身,所以其返回是隐式的,如果自行添加返回值,则构造器就变成了普通方法,失去了构造器的特性。
结语:用一句话来概括使用Java类和对象的步骤:
创建一个类,其中具有一些特性(成员变量),通过方法得到或操纵这些变量。要想拥有以上权限,首先需要先创建一个实例。