第三章 类与繼承 信底求容院
第三章 类与继承
本章内容 类与对象 ●面向对象特征 关键字 static的使用 关键字na的使用 G carre
本章内容 ⚫ 类与对象 ⚫ 面向对象特征 ⚫ 关键字static的使用 ⚫ 关键字final的使用
课前思考 1.对象和类是什么样的关系? 2.面向对象编程的特性是哪三个? G carre
课前思考 1. 对象和类是什么样的关系? 2. 面向对象编程的特性是哪三个?
3.1类和对象 3.1.1类声明 class类名 extends父类名 implements接口 列表 类体 3.1.2类体 类中含有两种成员:成员变量,成员方法。 G carre
3.1 类和对象 3.1.1 类声明 class 类名[extends 父类名] [implements 接口 列表] {类体} 3.1.2 类体 类中含有两种成员:成员变量,成员方法
◆成员变量 成员变量的声明方式如下: Ipublic protected private][static final type 变量名;∥成员变量 其中, static:静态变量(类变量);相对于实例 变量fna:常量 ◆成员方法 方法的实现包括两部分内容:方法声 明和方法体。 G carre
◆成员变量 成员变量的声明方式如下: [public | protected | private ] [static] [final] type 变量名; //成员变量 其中, static: 静态变量(类变量);相对于实例 变量final: 常量 ◆成员方法 方法的实现包括两部分内容:方法声 明和方法体
方法声明中的限定词的含义: ● static:类方法,可通过类名直接调用 abstract:抽象方法,没有方法体 ● final:方法不能被重写 >方法声明 方法声明包括方法名、返回类型和外部参数。其 中参数的类型可以是简单数据类型,也可以是 复合数据类型。 方法体 方法体是对方法的实现,它包括局部变量的声明 以及所有合法的Java指令 G carre
方法声明中的限定词的含义: ⚫ static: 类方法,可通过类名直接调用 ⚫ abstract: 抽象方法,没有方法体 ⚫ final: 方法不能被重写 ➢ 方法声明 方法声明包括方法名、返回类型和外部参数。其 中参数的类型可以是简单数据类型,也可以是 复合数据类型。 ➢ 方法体 方法体是对方法的实现,它包括局部变量的声明 以及所有合法的Java指令
313关键字this 在一个方法内,如果局部变量和成员变量 的名字相同,则局部变量被隐藏,若要访 问成员变量,要在变量名前加 上”this.,”,this表示当前对象的引用。 314方法重载 方法重载是指多个方法享有相同的名字 但是这些方法的参数必须不同,或者是参 数的个数不同,或者是参数类型不同。返G 回类型不能用来区分重载的方法 carre
3.1.3 关键字this 在一个方法内,如果局部变量和成员变量 的名字相同,则局部变量被隐藏,若要访 问成员变量,要在变量名前加 上”this. ,”,this表示当前对象的引用。 3.1.4 方法重载 方法重载是指多个方法享有相同的名字, 但是这些方法的参数必须不同,或者是参 数的个数不同,或者是参数类型不同。返 回类型不能用来区分重载的方法
3.1.5类的继承 通过继承实现代码复用。Java中所有的类都是 通过直接或间接地继承 Kjava. lang Object类得 到的。继承而得到的类称为子类,被继承的 类称为父类。子类不能继承父类中访问权限 为 privatel的成员变量和方法。子类可以重写 父类的方法,及命名与父类同名的成员变量 但Java不支持多重继承,即一个类从多个超 类派生的能力 类继承的传递性。 G carre
3.1.5 类的继承 通过继承实现代码复用。Java中所有的类都是 通过直接或间接地继承java.lang.Object类得 到的。继承而得到的类称为子类,被继承的 类称为父类。子类不能继承父类中访问权限 为private的成员变量和方法。子类可以重写 父类的方法,及命名与父类同名的成员变量。 但Java不支持多重继承,即一个类从多个超 类派生的能力。 类继承的传递性。 3.1.6 类的初始化过程
当创建一个对象时,对象的各个变量根据 其类型被设置为相应的默认初始值,然后 调用构造方法,而每次调用构造方法都是 要执行三个阶段: 1、调用超类的构造方法 2、由初始化语句对给变量进行初始化; 3、执行构造方法的体 3.1.7源文件 若源文件中不包括 public类或者接口,文件 名字可以是任意合法的文件名 Javac*java; Javac.主方法所在的类 G carre
当创建一个对象时,对象的各个变量根据 其类型被设置为相应的默认初始值,然后 调用构造方法,而每次调用构造方法都是 要执行三个阶段: 1、调用超类的构造方法; 2、由初始化语句对给变量进行初始化; 3、执行构造方法的体。 3.1.7 源文件 若源文件中不包括public类或者接口,文件 名字可以是任意合法的文件名。 Javac *.java; Javac 主方法所在的类
32面向对象特性 3.2.1封装 iava中类的限定词的作用范围比较 同一个同一个不同包不同包 类 包的子类非子类 private default protected public
3.2 面向对象特性 3.2.1 封装 java中类的限定词的作用范围比较 同一个 类 同一个 包 不同包 的子类 不同包 非子类 private * default * * protected * * * public * * * *