第4章 类和对象-Java程序设计与项目案例教程-梁立新-清华大学出版社

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4.3.4 方法的参数传递
方法分为有参数的方法和无参数的方法。在调用一个有参(参数 称为形式参数)方法时,必须给方法提供实际参数,完成实际参 数向形式参数的传值,就是参数传递。
计算机语言为子程序传递参数提供两种方式。第一种方式是值传 递(pass-by-value)。这种方式将一个参数值(value)复制成为 子程序的参数,这样,对子程序参数的改变不影响调用它的参数。 第二种方式是引用传递(pass-by-reference)。在这种方式中, 参数的引用(而不是参数值)被传递给子程序参数。在子程序中, 该引用用来访问调用中指定的实际参数,这样,对子程序参数的 改变将可能会影响调用子程序的参数。
public static void main(String args[]) { int a = 10; System.out.println("a and b before call: " +a ); ParamPass ob=new ParamPass(); ob.add(a); System.out.println("a and b after call: " +a );
} }
4.3.5 类成员的访问控制符
修饰符 public
同一个类 同一个包中 不同包中的子类 全局


Yes
Yes
Yes
Yes
protected
Yes
Yes
Yes
No
default
Yes
Yes
No
No
(friendly)
private
Yes
No
No
No
4.4 类的实例化
创建对象 对象成员的使用 对象资源的回收
}
public static void main(String[] args){ StringTest st = new StringTest (); st.changeString("Hello Lixin"); st.printString();
} }
4.3 类的定义及访问
类的定义 成员变量的定义及修饰字 方法的定义及修饰字 方法的参数传递 类成员的访问控制符
【例】类的创建
package sample; class StringTest{
private String s; public void printString(){ System.out.println(s); }
public void changeString(String str){ s = str;
Hale Waihona Puke Baidu
4.3.1 类的定义
基本语法如下:
[类修饰符] class 类名称 [extends 父类名称][implements 接 口名称列表] {
成员变量定义及初始化; 方法定义及方法体; }
类的定义由类声明和类体组成。其中,类声明 包含关键字class、类名称及类的属性。 类的修饰符有:public、abstract 、final和friendly 四种,默认方式为friendly。
第四章 类和对象
本章主要内容
面向对象的程序设计思想 类和对象的关系 类的定义及访问 类的实例化 类的封装、继承和多态
4.1 面向对象程序设计思想
4.1.1 OOP思想
面向对象的分析(OOA, Object-Oriented Analysis); 面向对象的设计(OOD, Object-Oriented Design); 面向对象的程序设计(OOP, Object-Oriented Program)。
4.4.1 创建对象
对象的生成包括声明、实例化和初始化。基本语法如下: 类名称 对象名 //声明对象 对象名= new 类名([<参数列表>]); //创建对象
4.4.2 对象成员的使用
对象的使用是通过运算符"."实现对变量的访问和方法的 调用。变量和方法可以通过设定访问权限来限制其它对象 对它的访问。基本语法如下:
Java对于基本数据类型的参数,它是“值传递”方式。对于引用类 型的参数,它也是“值传递”方式,只不过传递的是引用的值(有 些书籍中称为引用传递。)因此,引用本身无法改变,而引用指 向的对象内容可以被改变。
【例】参数的传递方式
package sample; class ParamPass {
void add(int i) { i += 5; }
外部访问,必须通过构造函数间接进行。 (3)Protected:受保护类型,子类访问受到限制。
4.3.3 方法的定义及修饰字
基本格式如下:
[方法修饰符] 返回类型 方法名称(参数1,参数2,…) [throws 异常类]
{
方法体
}
其中,方法修饰符有:[public | protected | private ] [static] [final | abstract] [native] [synchronized]。
4.1.2 面向对象程序设计方法特点
与人类习惯的思维方法一致,稳定性好,可重用性好,易于 开发大型软件产品,可维护性好
4.2 类和对象的关系
类(Class): 具有相同或相似性质的对象 的抽象就是类。忽略事物的非本质特征, 只注意那些与当前目标有关的本质特征, 从而找出事物的共性,把具有共同性质的 事物划分为一类,得出一个抽象的概念。 因此,对象的抽象是类,类的具体化就是 对象,也可以说类的实例是对象。
对象名.成员变量名 对象名.成员方法名([<参数列表>]);
【例】类的定义及成员方法的使用
package sample; public class Person {
int age; public void pout() {
System.out.println("My age is" + age); } public static void main(String args[]) { Person p1 = new Person(); Person p2 = new Person(); p1.age = 20; p2.age=18; p1.pout(); p2.pout(); } }
4.3.2 成员变量的定义及修饰字
成员变量:指类的一些属性定义,标志类的静态特征,它的基本 语法如下:
[变量修饰符] 变量数据类型 变量名1,变量名2[=变量初值]…; 对于一个成员变量,可以有访问说明符有public、private和
protected三种: (1)public:省略时默认为公有类型,可以由外部对象进行访问。 (2)private:私有类型,只允许在类内部的方法中使用,若从
相关文档
最新文档