苹者演大孝 South China Agr icultur al Uni versity 第三章使用类和对象
第三章 使用类和对象
主要内容 建立对象 格式化输出 String类 枚举型 包 。包装类 组件和容器 Random类 嵌套的面板 Math类 图像 JAVA
2 • 建立对象 • String类 • 包 • Random类 • Math类 主要内容 ⚫格式化输出 ⚫枚举型 ⚫包装类 ⚫组件和容器 ⚫嵌套的面板 ⚫图像
31建立对象 在Java中,变量名代表一个基本数据类型值或者是 个对象 类名能被用于定义对象变量。 String title; 上述语句并不创建任何对象。 一个对象引用变量不能保存对象本身,而是保存该对象 的地址。 对象本身必须单独创建。 JAVA
3 3.1 建立对象 ➢ 在Java中,变量名代表一个基本数据类型值或者是一 个对象. ➢ 类名能被用于定义对象变量。 String title; ➢ 上述语句并不创建任何对象。 ➢ 一个对象引用变量不能保存对象本身,而是保存该对象 的地址。 ➢ 对象本身必须单独创建
通常我们使用new关键字来建立一个对象。 string title new String ("Java Software Solutions")i 使用new运算符 调用了 String的构造函数这一函数建立 返回新对象的地 个 String类型的对象tt,并对其初始 址 化为“ Java software solutions” >建立一个对象称为对相应“类”的实例化或对象化。 JAVA
4 ➢ 通常我们使用new关键字来建立一个对象。 ➢ 建立一个对象称为对相应“类”的实例化或对象化。 String title = new String ("Java Software Solutions"); 调用了 String的构造函数,这一函数建立 一个String类型的对象title,并对其初始 化为“Java Software Solutions” 使用new运算符 返回新对象的地 址
分析下面两条声明语句 int nu String name 经过声明的变量经过初始化后: num 42 name new string( James Gosling)i num1 42 name "James Gosling 5 JAVA
5 • 分析下面两条声明语句: • 经过声明的变量经过初始化后: name “James Gosling" num1 42 int num; String name; num = 42; name = new String(“James Gosling”);
口类对象初始化以后,可以使用”运算符来引用对象 的方法。该运算符直接跟在对象名后,接着给出被调 用的方法。 c。unt=tt1e,1 ength() 口有些方法完成后产生返回值,有些方法则不产生返回 值,方法的返回值可以用于表达式或者任务。 口一个方法的调用可以看成是让对象执行某种服务。 JAVA
6 类对象初始化以后,可以使用 ”.” 运算符来引用对象 的方法。该运算符直接跟在对象名后,接着给出被调 用的方法。 count = title.length() 有些方法完成后产生返回值,有些方法则不产生返回 值,方法的返回值可以用于表达式或者任务。 一个方法的调用可以看成是让对象执行某种服务
几点说明: ◆对象引用变量保存的是对象的地址,可以看成是指向 对象存储单元的指针。 ◆在使用一个对象引用变量之前,必须完成初始化,使 之指向一个有效的对象,不然系统将发出错误信息。 ◆可以将对象引用变量设置为nu表示一个对象引用 变量不指向任何对象。 ◆使用new运算符建立对象后,将调用类的构造方法初 始化新对象。构造方法是一种特殊的方法,方法名与 类名相同。 JAVA
7 ◆在使用一个对象引用变量之前,必须完成初始化,使 之指向一个有效的对象,不然系统将发出错误信息。 ◆可以将对象引用变量设置为null,表示一个对象引用 变量不指向任何对象。 ◆使用new运算符建立对象后,将调用类的构造方法初 始化新对象。构造方法是一种特殊的方法,方法名与 类名相同。 几点说明: ◆ 对象引用变量保存的是对象的地址,可以看成是指向 对象存储单元的指针
◆在声明时初始化对象,可以将声明对象引用变量和创 建对象合并。如 String title new String( Java") ◆对于 String对象,无须显式地使用new运算符以及调 用构造方法来创建对象,如 String City=“ Bejing” 8 JAVA
8 ◆在声明时初始化对象,可以将声明对象引用变量和创 建对象合并。如: String title = new String(“Java ”); ◆对于String对象,无须显式地使用new运算符以及调 用构造方法来创建对象,如: String City = “BeiJing”;
312别名机制 对于简单数据类型: ·赋值语句将num1中的值赋值一份赋给num2变量。 num138 Before: num2 96 num2 num1 num138 After. num238 JAVA
9 3.1.2 别名机制 • 对于简单数据类型: • 赋值语句将num1中的值赋值一份赋给num2变量。 num1 38 num2 96 Before: num2 = num1; num1 38 num2 38 After:
对于对泉类型: 赋值语句复制的仅仅的对象的引用地址。 namel sTeve Jobs i Before: name2 STeve wozniak I name2 namely name1 Steve Jobs I After. name2 10 JAVA
10 • 对于对象类型: • 赋值语句复制的仅仅的对象的引用地址。 name2 = name1; name1 name2 Before: "Steve Jobs" "Steve Wozniak" name1 name2 After: "Steve Jobs