Java程序设计第2版第七章
时间:2025-04-03
时间:2025-04-03
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
第7章 Java类的特性
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
通过本章的学习,主要掌握以下知识点:类的私有成员与公共成员
方法的重载构造方法
实例成员与静态成员
2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
本章的重点: 方法的重载
构造方法本章的难点:
静态成员
2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
7.1 类的私有成员与公共成员在第6章的例子中,可以看到类的成员变量pi、
radius和height可以在类Cylinder的外部任意修改。这虽然方便了程序员灵活的使用,但也存在弊端。
2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
7.1.1 私有成员如果没有一个机制来限制对类中成员的访问, 则很可能会造成错误的输入。为了防止这种情况
的发生,Java提供了私有成员访问控制修饰符private。 下面来举例说明。
2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
【例7.1】在圆柱体类Cylinder中,创建类的 私有成员,使之在该类的外部无法访问该成员。//app7_1.java 定义私有成员,使之无法在类外被访问 class Cylinder //定义Cylinder类 { private double radius; //将数据成员radius声明为私有的 private int height; //将数据成员height声明为私有的 private double pi=3.14; //将数据成员pi声明为私有的,并赋初值 double area() { return pi* radius* radius; //在Cylinder类内部,故可访问私有成员 } double volume() { return area()*height; //在类内可以访问私有成员height } }2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
【例7.1】续public class app7_1 //定义公共主类 { public static void main(String args[ ]) { Cylinder volu; volu=new Cylinder(); volu.radius=2.8; //错误!在类的外部,不能直接访问私有成员。 volu.height=-5; //错误!在类的外部,不能直接访问私有成员。 System.out.println("底圆半径="+volu.radius); System.out.println("圆柱的高="+volu.height); System.out.print("圆柱"); System.out.println(“底面积=”+volu.area()); //正确! System.out.println("圆柱体体积="+volu.volume()); //正确! } }2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
7.1.2 公共成员如果在类的成员声明的前面加上修饰符public,
则表示该成员可以被所有其他的类所访问。由于public修饰符会造成安全性和数据封装性的下降,所
以一般应减少公共成员的使用。下面举例说明如何利用公共方法来访问私有成员变量。
2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
【例7.2】创建圆柱体类Cylinder的公共成员 方法,来访问类内的私有成员变量 。//app7_2.java 定义公共方法来访问私有成员 class Cylinder { private double radius; //声明私有数据成员 private int height; private double pi=3.14; public void SetCylinder(double r, int h) //声明具有2个参数的公共方法 { //用于对私有数据进行访问 if (r>0&& h>0) { radius=r; height=h; } else System.out.println(“您的数据有错误!!”); }2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
double area() 【例7.2】续 { return pi* radius* radius; //在类内可以访问私有成员radius和pi } double volume() { return area()*height; //在类内可以访问私有成
员height }} public class app7_2 //定义公共主类 { public static void main(String args[ ]) { Cylinder volu=new Cylinder(); volu.SetCylinder(2.5, -5); //通过公共方法SetCylinder()访问私有数据 System.out.println("圆柱底面积="+volu.area()); System.out.println("圆柱体体积="+volu.volume()); } }2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
【例7.2】续程序运行结果如下: 您的数据有错误!! 圆柱底面积=0.0 圆柱体体积=0.0
2012-9-8
通过本章的学习,主要掌握以下知识点: 类的私有成员与公共成员 方法的重载 构造方法 实例成员与静态成员
7.1.3 友元若在类成员的前面加上访问控制符friendly, 说明该成员是友元。友元访问控制符可以省略。也 就是说在类内声明类成员时,不加任何访问控制修 饰符,则该成员是一个友元。一个成员被声明为友 元,表示这个成员只能被同一个包中的类所访问, 但 …… 此处隐藏:1559字,全部文档内容请下载后查看。喜欢就下载吧 ……