内部类教学案例设计

时间:2022-05-14 08:19:59

内部类教学案例设计

摘要:内部类相关内容在java编程基础教学中是一个难点也是一个重点。外部类和内部类之间的关系可以用门和锁的关系来比喻,通过UML图让学生使用java语言实现门和锁的关系,达到突出重点突破难点的效果。内部类也可以实现多继承体系。

关健词:内部类;外部类;多继承

中图分类号:G642文献标识码:A文章编号:1009-0118(2012)12-0125-02

我们可以在一个类的内部定义另外一个类,这种嵌套于一个类内部的类称为内部类,也称为内隐类、嵌套类。被嵌套的类称为外部类或类。使用内部类我们可以将逻辑相关的类组织在一起,提高程序的可读性和可维护性。

例如:

class Outer{

privateint out_i=100;

public void display(){

Inner in=new Inner();

in.doStuff();

}

class Inner {

void doStuff(){

System.out.println(“输出外部类的成员变量out_i=”+out_i);

}

}

}

class OuterDemo{

public static void main(String []args){

Outer out=new Outer();

out.display();

}

}

如上例所示,在Outer类中定义了一个Inner类,Inner类称为内部类,而Outer类称为外部类。在display()方法中生成内部类Inner的对象。看起来内部类和使用其它的class一样,唯一的差别是该类定义在了Outer类中,但这不是内部类与其它类的唯一区别,因为在一个内部类中可以访问其外部类所有的成员包括私有成员,但内部类的成员对外部类来讲是不可见的,外部类不能直接访问其内部类的成员,只能通过生成内部类的对象,通过该对象访问外部类的成员。内部类可以用private 来修饰,这样可以阻止外部类之外的类来访问。

在什么情况下要使用内部类呢?如果一个类要使用另外一个类的对象,而另外一个类又要使用这个类的成员,我们就把另外一个类做成这个类的内部类。我们通过门和锁实例进一步分析内部类的用法。

问题描述:一间房子有一道门,这道门有一把门锁,这把门锁只适合这一道门,而外部要访问锁只能通过门,门紧紧的包含了锁。这把锁控制着门的解锁(开)和上锁(关),通过对锁的操作可以开门和锁门。请把这个问题用一个程序进行模拟。

首先我们使用UML图来表示门类和锁类之间的关系。

上一篇:成都高校“三自主”体育选课的调查与思考 下一篇:就业困境下高校生命教育重要性及途径探析