Java实践课程实验(2009岁末整理)
面向对象原理与Java
实践课程实验代码及报告
实验
1
:对象和类
实验内容:
1
、尝试两人合作编写程序,加深对方法的接口与实现的理解。其中一人负责编写方法
isPrime()
,用于判断一个给定的正整数是否素数,另一个人负责编写主方法
main()
,利用
isPrime()
验证著名的哥德巴赫猜想:任何比
2
大的偶数都可表示为两个素数之和。(提示:验证必须有上界,程序未调试成功之前应先选择一个较小的上界,调试成功后再换成较大的上界。上界可由用户输入,否则应定义为一个符号常量。)
2
、设计一个简单的日期类
Date
,然后编写一个主程序演示该类的用法。(提示:一个日期至少具有年、月、日等属性,其行为有初始化、修改日期、返回描述日期的字符串、返回该日期的年、月、日等。)
3
、试设计一个带有四则运算的复数类,并编写主程序演示其用法。(提示:一个复数
Complex
由两部分组成:实部
realPart
和虚部
imaginaryPart
,两个复数可进行加、减、乘、除四则运算。)
实验
2
:继承与接口
实验内容:
1
、假定要为某个公司编写雇员工资支付程序。这个公司有各种类型的雇员,不同类型的雇员按不同的方式支付工资:经理(
Manager
)每月获得一份固定的工资;销售人员(
Salesman
)在基本工资的基础上每月还有销售提成;一般工人(
Worker
)则按他每月工作的天数计算工资。
(提示:设计一个抽象类――雇员(
Employee
)描述雇员的共同特性,例如姓名(
name
)等。这个类还应提供一个计算工资的抽象方法
computeSalary()
,使得可以通过为个类计算所有雇员的工资。
设计经理(
Manager
)类、销售人员(
Salesman
)类、一般工人(
Worker
)类,再设计一个演示用的类。)
2
、在前面的基础上对雇员工资计算程序进行扩充,即将一般雇员再细分为计时雇员(
DailyWorker
)和计件雇员(
PieceWorker
)两类,计时雇员按天计算工资额,而计件雇员按其生产的产品件数计算工资额。(提示:设计这两个类,与前面的程序结合在一起,修改一下演示程序,演示这些类的用法。)
3
、在程序包
packageOne
中编写至少含一个方法的公有接口
InterfaceOne
。在程序包
packageTwo
中定义公有类
SuperClass
,该类含有一个受保护的内部类
InnerClass
,这个类实现接口
InterfaceOne
。在程序包
packageThree
中定义公有类
SubClass
继承
SuperClass
相关文档:
for(int i=0;i<string.length();i++)
{
char x=string.CharAt(i);
if(Character.isDigit(i)==true){
//x类型转换然后统计
}
}
如下可以将字母与数字分离出来
用正则!
String str="200Minute";
String str2="300.25Hour";
String regex="[a-zA-Z]" ......
java中判断字符串是否为数字的三种方法
1>用JAVA自带的函数
public static boolean isNumeric(String str){
for (int i = str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
......
/*
* @ Lunar.java
* @ 根据公历日期y/m/d推算出农历日期(属象,天支地干等)
* @ author Qiangwei He
* @ v1.0 2009/12/10 jdk1.6 compile
*
* field:
* int y,m,d; &n ......
java中怎么加入声音 先说一下在 applet 中播放声音文件的一般步骤:
创建一个 AudioClip 对象
装入 .au 或者wav的声音文件(或者后面所说的支持的类型)到 AudioClip 对象
下面是相应的代码:
import java.applet.*;
AudioClip ac = getAudioClip(getCodeBase(), soundFile);
ac. ......
2009年最后一博:关于 Java 中对象的复制
Java 中的赋值操作符与 C++ 中的不一样。在 C++ 中,这条语句:bc2 = bc1;将一个名为 bc1 的对象的所有数据都拷贝到名为 bc2 的对象中。也就是说这条语句执行后,程序中有两个含有相同数据的对象。然而在 Java 中,这条相同的赋值语句 ......