- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3–类与对象的基本概念
* * * * * * * * * * * * * * * * * * * * * * * * * * * 方法的使用 练习 声明一个MathUtil类,提供: 方法total(int i):返回1到i的累加和,如果传入的参数为0或负数则返回-1; 方法factorial(int i):返回i的阶乘结果,如果传入的参数为负数则返回-1; 方法prime(int i),打印1-i之间的所有质数,如果传入的参数为0或负数则返回”输入错误!”。 方法的使用 方法的递归调用 递归是常用的编程技术,其基本思想是“自己调用自己” 。 数学上最常见的递归问题就是自然数的阶乘。 n=1,n! = 1; n1,n! = n * (n-1)!; 例: Recursion. Java 方法的使用 练习 Fibonacci数列:13世纪意大利著名数学家斐波那契(Fibonacci)在他的著作《算盘书》中,记载着这样一个有趣的问题:”由一对兔子开始,一年后可以繁殖成多少对兔子?”假设免子的生殖力是这样的:每对兔子每一个月可以生一对兔子,并且兔子在出生两个月后就具有生殖后代的能力。 该数列特征如下,如:1; 1; 2; 3; 5; 8; 13; 21; 34; F1 = F2 = 1; Fn = Fn-1 + Fn-2 (n=3) 编写方法求该数列的第n项的值,n值由参数传入。 类的组织 包(package) 作用与Windows系统中的文件夹类似,它不具有任何特别的功能,只是用来存放一个或者多个类和接口的空间。 使用包可以避免同名类发生冲突,使类的管理更清晰,更有条理。 包可以嵌套使用,一个包中可以再有多个包,就像一个文件夹内可以含有多个子文件夹一样。 类的组织 包(package) 定义包:package 包名; 定义包的语句必须放在源程序有效代码的第一行。使用这个语句就可以创建具有指定名字的包,并且当前程序中的所有类都属于这个包。 如果在package语句的包名中含有符号“.”,则代表了目录分隔符。在这种情况下,需要按照包名分割的顺序,依次创建子文件夹中的子文件夹。 注意:Java package的命名习惯是所有字母全部小写!! 例如:package people.person.managers; 类的组织 包(package) 导入包 当需要使用另一个包中的类时,需要先导入该包,导入的形式为:import 包名.类名; 其中,包名可以使用符号“ . ”来表明包的层次,如果要从一个包中引入多个类,则可以用符号“*”来代替类名。例如:import java.awt.* ; 注意:“ * ”只能表示本层次包中的所有类,不包括子包中的类。所以必须多次使用import语句导入所有需要的类。 例如:import java.awt.* ; import java.awt.event.* ; 例: Package. Java 类的组织 使用包的好处 程序员能很容易确定同一包的类是相互关联的; 程序员能很方便地了解到在哪里可以找到能完成特定功能的类; 避免产生类名冲突; 比如Java标准类库中的常见包名: java.net:提供与网络编程有关的类和接口; java.io:提供与输入输出编程有关的类和接口; java.lang:提供Java 编程语言的基础类。 访问控制 类的访问控制 只有public(公共)及无修饰符(缺省)两种。 当使用public修饰符时,表示所有其它的类都可以使用此类; 当没有修饰符时,则只有与此类处于同一包中的其它类可以使用此类。 例: PackageTest. Java 访问控制 类成员的访问控制 类成员的访问控制符有public,private,protected及无修饰符4种: private(私有的):类中限定为private的成员只能在这个类中被访问,在类外不可见。 无修饰符(缺省的):如果没有访问控制符,则该类成员可以被该类所在包中的所有其它类访问。 protected(受保护的):用该关键字修饰的类成员可以被同一类、被该类所在包中的所有其它类或其子类(可以不在同一包中)的实例对象访问。 public:用public修饰的类成员可以被其他任何类(前提是对类成员所在的类有访问权限) 。 例: PackageTest. Java 访问控制 类成员访问控制符与访问能力之间的关系 : √ × × × 不同包中的非子类 √ √ × × 不同包中的子类 √ √ √ × 同一包中的非子类 √ √ √ × 同一包中的子类 √ √ √ √ 同一类 public protected 无修饰符 private 类型 常用工具类 字符串和数字的相互转换 数字转换为String:使用Str
文档评论(0)