Java实验

   

(一)类的多态性练习

1.   理解类的多态性

类的多态性体现在方法的重载(overload)上,包括成员方法和构造方法的重载。

   2.   方法的重载

    方法的重载是指对同名方法的不同使用方式。

1)程序功能:对不同的数进行排序输出。在IntSort 类中定义2 个同名的方法sort

2)编写 KY5_1.java 文件,源代码如下:
class IntSort{
	public String sort(int a,int b) {
		if(a>b)
			return a+" "+b;
		else
			return b+" "+a;
	}
	public String sort(int a,int b,int c) {
		int swap;
		if(a<b) {
			swap=a;
			a=b;
			b=swap;
		}
		if(a<c) {
			swap=a;
			a=c;
			c=swap;
		}
		if(b<c) {
			swap=b;
			b=c;
			c=swap;
		}
		return a+" "+b+" "+c;
	}
}
public class KY5_1 {

	public static void main(String[] args) {
		int a=30,b=12,c=40;
		IntSort s=new IntSort();
		System.out.println("两个数的排序结果:"+s.sort(a, b));
        System.out.println("三个数的排序结果:"+s.sort(a, b, c));
	}

}

(二)构造方法的重载
      

构造方法的名称和类同名,没有返回类型。尽管构造方法看起来和一般的成员方法没有差别,但它不是方法,也不是类的成员。因此,构造方法不能直接调用,只能由new 操作符调用。

构造方法对于类是十分重要的,对象的初始化任务要靠构造方法来完成。重载构造方法的目的是提供多种初始化对象的能力,使程序员可以根据实际需要选用合适的构造方法来初始化对象。

        1)编写程序KY5_2.java,将其中的类RunDemo的构造方法进行重载。源代码如下:

class RunDemo {
private String userName, password; 
RunDemo(String name) {
userName=name; 
}
RunDemo(String name, String pwd) {
this(name); 
password=pwd;
}
void check() {   //检验用户名和密码
String s=null;
if (userName!=null)
s="用户名:"+userName;
else
s="用户名不能为空!";
if (password!="123456")
s=s+" 口令无效!";
else
s=s+" 口令:******";
System.out.println(s);
}
}

public class KY5_2 {

	public static void main(String[] args) {
		RunDemo r1=new RunDemo("刘新宇");
		r1.check();
		RunDemo r2=new RunDemo(null, "654321"); 
		r2.check();
		RunDemo r3=new RunDemo("张驰","123456");
		r3.check(); 

	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值