欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

面向对象

程序员文章站 2022-06-28 17:58:30
访问修饰符 修饰符一般只修饰属性和方法,属性尽量使用private,方法尽量使用public public公开的,只要在同一工程内就可以访问 protected受保护的,只能在当前包或子类中才能访问 缺省,没有修饰符即默认,只能在当前包中才能访问 private,私有的,只能在当前类中使用 类型修饰 ......

访问修饰符

修饰符一般只修饰属性和方法,属性尽量使用private,方法尽量使用public

public公开的,只要在同一工程内就可以访问

protected受保护的,只能在当前包或子类中才能访问

缺省,没有修饰符即默认,只能在当前包中才能访问

private,私有的,只能在当前类中使用

类型修饰符

static:修饰变量成为静态变量,修饰方法成为静态方法

1, 静态属性和方法在new之后放入内存,而非静态变量和方法在new之前就放内存

2, 静态属性和方法通过“类名.属性/方法”来调用,而非静态,属性或方法通过“对象名.属性/方法”调用

final:修饰变量成为静态变量,修饰方法成为静态方法

1, 修饰变量使之成为常量,常量名全部大写,不能修改其值

2, 修饰方法使之不能被子类重写

3, 修饰类使之不能被继承

是对象的抽象概念,由属性(成员变量)和方法(成员方法)组成

构造方法:

1, 方法名和类名一样,没有返回值也不能写成void

2, 目的是给属性赋初值

3, 创建一个类会默认创建一个无参的构造方法,会默认调用super(),如果自定义了构造方法会覆盖默认的构造方法

重写:子类中的方法和父类的返回值类型、方法名、参数列表相同

重载:在同一个类中,方法名相同,参数列表不同(个数,类型,顺序)

对象

类的实例化,通过new创建对象(JDK1.8以后可以通过反射不使用new创建对象)

把属性和方法封到一个类里面,使用的时候通过对象来访问

封装

把属性和方法封到一个类里面,使用的时候通过对象来访问

实现封装:

1,  属性私有化

2,  对属性提供getter和setter

继承

提高代码复用,降低冗余,通过关键字extends来实现

1, 单根继承(但是可以多重继承)

2, 父类私有属性方法和构造方法不能继承

3, super表示父类实例对象,只能在子类中使用

4, super()表示调用父类构造方法(必须写在子类构造器中第一行)

5, this表示当前类的实例对象,能区*部变量和成员变量(属性)

6, this()表示调用当前类的构造方法,也不许放在首行

多态

1,  可以把父类当成子类来使用(实例化子类用父类接收)

2,  只能访问父类中的属性和方法,如果要访问子类独有的属性和方法要强制转换成子类

抽象类

通过abstract来定义

1, 可以包含抽象方法,不能直接实例化,只能实例化子类

2, 子类必须实现父类的抽象方法(如果不实现那么子类也必须是抽象类)

抽象方法:没有方法体,访问修饰符不能为private,因为这样子类就不能继承该方法也实现不了该方法

接口

通过interface来定义

1, 接口和接口可以多继承

2, 类和接口通过implements实现,也可以多实现(所以一般不采用接口多继承)

3, 由静态常量和抽象方法组成,对于常量可以省略public static final,对于方法可以省略public abstract