Java基础-day10-代码题-继承&抽象类

Java基础-day10-代码题-继承&抽象类

1.门类继承题:

编写代码,实现如下功能:

(1)定义一个门类,

包含3个属性:宽度width 和 高度height ,颜色color

包含2个方法:开门和关门

开门方法:输出“门已经打开,请进!”

关门方法:输出“门已经关闭,禁止进入!”

(2)定义一个木头门WOOD,继承Door

重写父类开门方法:输出门的高度 宽度 颜色 +“门已经打开,请进!”

重写父类关门方法:输出门的高度 宽度 颜色 +“门已经关闭,禁止进入!”

(3)定义一个测试类,测试类定义一个main方法

分别创建 门对象 和 木头门对象, 为创建的木头门对象属性赋值, 调用开门和关门两个方法。

代码实现:

package StudentJavaSEday10;
class Door {
 // 定义属性
 private double width;
 private double hight;
 private String color;
 public double getWidth() {
 return width;
 }
 public void setWidth(double width) {
 this.width = width;
 }
 public double getHight() {
 return hight;
 }
 public void setHight(double hight) {
 this.hight = hight;
 }
 public String getColor() {
 return color;
 }
 public void setColor(String color) {
 this.color = color;
 }
 //开门方法
 public void openDoor(){
 System.out.println("门已经打开,请进!");
 }
 //关门方法
 public void closeDoor(){
 System.out.println("门已经关闭,禁止进入!");
 }
}
package StudentJavaSEday10;
class WoodDoor extends Door {
 // 重写开门方法
 public void openDoor() {
 System.out.println("门的宽度为:" + getWidth() + ",高度为:" + getHight() + ",颜色:" + getColor() + ",门已经打开,请进!");
 }
 // 关门方法
 public void closeDoor() {
 System.out.println("门的宽度为:" + getWidth() + ",高度为:" + getHight() + ",颜色:" + getColor() + ",门已经关闭,禁止进入!");
 }
}
package StudentJavaSEday10;
public class Demo{
 public static void main(String[] args) {
 //创建门对象
 Door door = new Door();
 // 调用方法
 door.openDoor();
 door.closeDoor();
// 创建木头门对象
        WoodDoor woodDoor = new WoodDoor();
 //调用set方法对属性赋值
 woodDoor.setWidth(1.8);
 woodDoor.setHight(2.5);
 woodDoor.setColor("红色");
// 调用方法
 woodDoor.openDoor();
 woodDoor.closeDoor();
 }
}

运行结果:

2.动物类重写题

1、定义动物类,有名称和年龄两个属性,且属性私有化,提供相应的getXxx与setXxx方法,提供无参数的无返回值的吃饭方法,内容为:“吃饭...”;

2、定义猫类,继承动物类,重写父类中的吃饭方法,内容为:“猫吃鱼...”

3、定义狗类,继承动物类,重写父类中的吃饭方法,内容为:“狗吃骨头...”

4、定义测试类,分别创建猫对象和狗对象,并分别给父类对象中的名称和年龄属性赋值;

5、分别使用猫对象和狗对象获取名称和年龄的属性值并打印在控制台上;

6、分别使用猫对象和狗对象调用吃饭方法;

代码实现:

package StudentJavaSEday10;
/*
 * 动物类:
 *  属性:
 *  名称
 *  年龄
 *  方法:
 *  吃饭方法
 *  getXxx与setXxx
 */
public class DongWu {
 // 属性
 private String name;
 private int age;
 // getXxx与setXxx
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this.name = name;
 }
 public int getAge() {
 return age;
 }
 public void setAge(int age) {
 this.age = age;
 }
 // 吃饭方法
 public void chiFan() {
 System.out.println("吃饭...");
 }
}
package StudentJavaSEday10;
/*
 * 狗类继承动物类
 */
public class Gou extends DongWu{
 public void chiFan() {
 System.out.println("狗吃骨头...");
 }
}
package StudentJavaSEday10;
/*
 * 猫类继承动物类:
 */
public class Mao extends DongWu{
 //重写吃饭的方法;
 public void chiFan() {
 System.out.println("猫吃鱼...");
 }
}
package StudentJavaSEday10;
/*
 * 测试类
 */
public class Test {
 public static void main(String[] args) {
 // 1、分别创建猫对象和狗对象,并分别给父类对象中的名称和年龄属性赋值
 Mao m = new Mao();
 m.setName("波斯猫");
 m.setAge(3);
 Gou g = new Gou();
 g.setName("哈巴狗");
 g.setAge(2);
 // 2、分别使用猫对象和狗对象获取名称和年龄的属性值并打印在控制台上;
 String name = m.getName();
 int age = m.getAge();
 String name2 = g.getName();
 int age2 = g.getAge();
 System.out.println("猫的名字为:" + name + ";年龄为:" + age);
 System.out.println("狗的名字为:" + name2 + ";年龄为:" + age2);
 // 3、分别使用猫对象和狗对象调用吃饭方法
 m.chiFan();
 g.chiFan();
 }
}

运行结果:

原文发布于微信公众号 - Java帮帮(javahelp)

原文发表时间:2017-06-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏进击的君君的前端之路

firstElementChild、firstChild 、childNodes和children方法

1272
来自专栏xingoo, 一个梦想做发明家的程序员

实用的JS代码段(表单篇)

整理了下比较实用的Javascript代码段,完整的代码参考 1 多个window.onload方法   由于onload方法时在页面加载完成后,自动调用...

2325
来自专栏一个会写诗的程序员的博客

jQuery Validate自定义各种验证方法jQuery Validate自定义各种验证方法

1002
来自专栏对角另一面

读Zepto源码之样式操作

这篇依然是跟 dom 相关的方法,侧重点是操作样式的方法。 读Zepto源码系列文章已经放到了github上,欢迎star: reading-zepto 源码版...

2410
来自专栏一直在跳坑然后爬坑

如何通过自定义View方式模拟SVG并实现动画

3.然后我们要进行对五角星动画的裁剪,涉及到的方法是PathMeasure的getLength和getSegment方法,getLength()不用多说,就是用...

1191
来自专栏三流程序员的挣扎

mermaid 语法

文字里用引号避免一些特殊字符的错误。比如矩形节点里有 () 时就无法渲染,所以加上引号。

1.8K3
来自专栏一个会写诗的程序员的博客

Scala类型推导Scala类型推导

根据Picrce的说法:“类型系统是一个可以根据代码段计算出来的值对它们进行分类,然后通过语法的手段来自动检测程序错误的系统。”

1492
来自专栏菜鸟前端工程师

JavaScript学习笔记017-数值方法0Math0定时器

813
来自专栏咸鱼不闲

jsoup爬虫工具的简单使用

解决方案: 1.通过url 获得doucment对象, 2.调用select()等方法获得Elements对象, 3.调用.text()等方法,获得自己想要的内...

4794
来自专栏跟着阿笨一起玩NET

VB.NET语法小结

2662

扫码关注云+社区

领取腾讯云代金券