- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
201441404323_刘颂恒_实验2
实验2 类的继承性
实验目的
掌握面向对象的继承性在Java中的实现方法;掌握super关键字的用法,体会抽象类和抽象方法的作用。
实验内容
程序理解:
类的继承
第4章课后编程第1题
编程题:
请按照以下要求设计类。( 程序1)
要求如下:
设计Animal类。类中定义一个成员变量animalName,表示动物的名称,变量animalName是String类型,默认初始值。在该类中再定义一个成员方法shout(),表示动物发出叫声的行为,该方法能输出名称为animalName的动物发出叫声,例如输出“波斯猫发出叫声”。
设计Cat类。使用关键字extends继承Animal类。Cat类中定义一个public类型的构造方法,该构造方法拥有一个String类型的参数catName,通过该参数,为Cat类中继承自Animal类的animalName成员变量赋值。
设计一个测试类。类名为ExtendsTest,在main方法中定义一个 String类型的name变量,并为它赋值为”波斯猫”,然后使用有参构造创建Cat类的对象,并使用对象的引用变量调用shout()方法。
设计父类和一个子类,在子类里面通过super关键字去调用父类的成员变量和成员方法,在子类的构造方法中使用super关键字调用父类的构造方法,在测试类里进行验证。(程序2)
创建(, 圆(),()的一个继承分级结构。在类中,提供并在中,从而根据不同类型的。,p为三角形的半周长。(程序3)
请按照以下要求设计一个Outer类。(程序4)
要求如下:
1)定义一个外部类Outer,并在该类中定义一个静态内部类Inner。
2)在内部类中定义一个静态变量staticField和一个静态staticMethod(),并将该变量的值设置为静态内部类的静态变量静态内部类的静态方法
请自己学习课本第11章,熟悉使用Eclipse进行程序调试(418页)
程序2运行结果
程序3运行结果
程序4运行结果
实验源代码
说明:请将各程序的源代码复制粘贴到这里。
程序1源代码
class Animal{
String animalName;
public void shout(){
System.out.println(animalName+发出叫声);
}
}
class Cat extends Animal{
public Cat(String catName){
animalName=catName;
}
}
public class ExtendsTest {
public static void main(String[] args) {
String name=波斯猫;
Cat cat=new Cat(name);
cat.shout();
}
}
程序2源代码
class father{
String a=父亲;
void speak(){
System.out.println(我是父亲);
}
public father(){
System.out.println(iam+a);
}
void voice(){
System.out.println(我是+a);
}
}
class son extends father{
void speak(){
super.speak();
}
public son(){
super();
super.a=儿子;
super.voice();
}
}
public class ExtendsTest02 {
public static void main(String[] args) {
son son1=new son();
son1.speak();
}
}
程序3源代码
abstract class PlaneGraphic{
abstract double area(){
}
abstract double grith(){
}
}
class Circle extends PlaneGraphic{
double r;
public Circle(double r){
this.r=r;
}
double area(){
System.out.println(圆的面积:+Math.PI*r*r);
return Math.PI*r*r;
}
double grith(){
System.out.p
文档评论(0)