AvA 象包(2) 辽宁经济职业技术学院信息系 硕士、副教授陈英 JAVA
对象和类(2) 辽宁经济职业技术学院信息系 硕士、副教授 陈英
AvA Final实例字段 可以把一个实例字段定义为fna(不能 改变的)。 ○在对象被构造时,这种字段必须被初始 化,即必须保证在每一个构造器结束之 前其值已被设定。 以后字段的值不能改变。 JAVA
Final实例字段 可以把一个实例字段定义为final(不能 改变的)。 在对象被构造时,这种字段必须被初始 化,即必须保证在每一个构造器结束之 前其值已被设定。 以后字段的值不能改变
常量 AvA 静态变量是很少见的。然而,静态常量却很普遍。例如, Math类中定义了一个静态常量: Public class math 这样就可以在程序 中使用 Math. PI来访 问此常量。 public static final double PI=3.14159265358979323846 如果关键字 static被省略,那么P就是Math类的一个 实例字段。即你需要M类的一个对象来访问P 且每个对象都有自己的对PI的一份拷贝 JAVA
常量 静态变量是很少见的。然而,静态常量却很普遍。例如, Math类中定义了一个静态常量: Public class Math { … … public static final double PI = 3.14159265358979323846; … … } 如果关键字static被省略,那么PI就是Math类的一个 实例字段。即你需要Math类的一个对象来访问PI, 并且每个对象都有自己的对PI的一份拷贝。 这样就可以在程序 中使用Math.PI来访 问此常量
静方波 AvA o静态方法是不对对象施加的方法。 o例如Math类的pow方法是一个静态方法, 其表达式: Math. pow(x2y) 计算幂x它并不使用任何一个Math对 象来执行此任务。即,它没有隐式参数。 可以把静态方法看作是没有this参数的方 法。 因为静态方法并不操作对象,所以我们不 能用一个静态方法访问实例字段。 o静态方法可以访问其自己类中的静态字 JAVA
静态方法 静态方法是不对对象施加的方法。 例如Math类的pow方法是一个静态方法, 其表达式: Math .pow(x,y) 计算幂x y 。它并不使用任何一个Math对 象来执行此任务。即,它没有隐式参数。 可以把静态方法看作是没有this参数的方 法。 因为静态方法并不操作对象,所以我们不 能用一个静态方法访问实例字段。 静态方法可以访问其自己类中的静态字段。 y x
静方波 AvA 可以使用类的名字来调用其静态方法。 ○使用对象来调用静态方法也是合法的 但这种表示会使人迷惑。 ○提倡使用类名来调用静态方法而不是对 象。 在以下两种情况下使用静态方法: 1)当一个方法不需要访问对象状态时 2)当一个方法只需要访问类中的静态变 量时。 JAVA
静态方法 可以使用类的名字来调用其静态方法。 使用对象来调用静态方法也是合法的。 但这种表示会使人迷惑。 提倡使用类名来调用静态方法而不是对 象。 在以下两种情况下使用静态方法: 1) 当一个方法不需要访问对象状态时。 2) 当一个方法只需要访问类中的静态变 量时
Main方法 AvA o可以不使用任何对象来调用静态方法。 例如,从没有构造Math类的任何对象而 调用 Math. pow 基于同样的原因,main方法是一个静态 方法。Main方法并不对任何对象施加操 作。事实上,当程序开始执行时,还不 存在任何对象。 静态main方法被执行,并构造程序所需 要的对象。 JAVA
Main方法 可以不使用任何对象来调用静态方法。 例如,从没有构造Math类的任何对象而 调用Math.pow。 基于同样的原因,main方法是一个静态 方法。Main方法并不对任何对象施加操 作。事实上,当程序开始执行时,还不 存在任何对象。 静态main方法被执行,并构造程序所需 要的对象
Main方法 AvA 每个类都可能有一个main方法。这是对 类进行单元测试的一个很方便技巧。 在实例 StaticTest, java中的 Employee类有 一个main方法,如果想单独测试 Employee类,则可以执行 java Employee 而如果使用ja java StaticTest 来执行此应用 程序,则 Employe类的main方法永远不 会被执行。 JAVA
Main方法 每个类都可能有一个main方法。这是对 类进行单元测试的一个很方便技巧。 在实例StaticTest.java中的Employee类有 一个main方法,如果想单独测试 Employee类,则可以执行java Employee。 而如果使用 java StaticTest来执行此应用 程序,则Employee类的main方法永远不 会被执行
防法参数 AvA o Javai程序设计语言总是使用传值调用( call by value)。它表示方法只得到调用者所提供的值。 ○传值调用意味着方法得到的是所有参数值的 个拷贝。方法不能修改传递给它的任何参数变 量的内容 例如,看下面的调用: double percent= 5: e raisesalary(percent) 不管此方法是如何实现的,调用此方法后, Percent的值仍旧是5。 JAVA
方法参数 Java程序设计语言总是使用传值调用(call by value)。它表示方法只得到调用者所提供的值。 传值调用意味着方法得到的是所有参数值的一 个拷贝。方法不能修改传递给它的任何参数变 量的内容。 例如,看下面的调用: double Percent= 5; e. raiseSalary (Percent); 不管此方法是如何实现的,调用此方法后, Percent的值仍旧是5
鲁方法参教 AvA 有两种方法参数: 1)基本类型(数字,布尔值) 2)对象引用 ○方法不可能修改基本类型的参数。 o方法可以改变对象参数的状态。 方法不能使一个对象参数指向一个新的 对象。 JAVA
方法参数 有两种方法参数: 1) 基本类型(数字,布尔值) 2) 对象引用 方法不可能修改基本类型的参数。 方法可以改变对象参数的状态。 方法不能使一个对象参数指向一个新的 对象
时构造—方法重戴 AvA 当多个方法具有相同的名字而含有不同 的参数时,便发生重载。 Java允许对任何方法重载,而不只是构 造器方法。 如果在构造器中没有明确地给某个字段 的值,那么此字段会被自动地赋值以 个默认值: 1)若是数字则被赋值以0; 2)若是布尔类型则被赋值以 false; 3)若是对象引用则被赋值以nul JAVA
对象构造——方法重载 当多个方法具有相同的名字而含有不同 的参数时,便发生重载。 Java允许对任何方法重载,而不只是构 造器方法。 如果在构造器中没有明确地给某个字段 的值,那么此字段会被自动地赋值以一 个默认值: 1)若是数字则被赋值以0; 2)若是布尔类型则被赋值以false; 3)若是对象引用则被赋值以null