作业-继承4

定义类Human,具有若干属性和功能;定义其子类Man、Woman;

在主类Test中分别创建子类、父类和上转型对象,并测试其特性。

package T092204;

public class Human {
    private String name;
    private int age;
    private String sex;
    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 String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public void speak(){
        System.out.println("I am a human.");
    }
    public void run(){
        System.out.println("I can run.");
    }
    public void getInfo(){
        System.out.println("我的名字是:"+getName()+" 我的年龄是:"+getAge()+" 我的性别是:"+getSex());
        Man m=new Man();
    }
}

package T092204;

public class Man extends Human {
    public void man(){
        if(getSex()=="男")
        {
            System.out.println("我是男人");
        }
        else{
            System.out.println("我是女人");
        }
    }
    public void run(){
        System.out.println("我会打篮球");
    }
}

package T092204;

public class Woman extends Human {
    public void woman(){
        if(getSex()=="女")
        {
            System.out.println("我是女人");
        }
        else
        {
            System.out.println("我是男人");
        }
    }
    public void run(){
        System.out.println("我会跳舞");
    }
}

package T092204;

public class Test {

    public static void main(String[] agrs){
        Man m=new Man();
        m.setName("张三");
        m.setAge(30);
        m.setSex("男");
        m.getInfo();
        m.speak();
        m.run();
        m.man();
        Human h=new Woman();
        h.setName("如花");
        h.setAge(25);
        h.setSex("女");
        h.speak();
        h.run();
        h.getInfo();
        if(h instanceof Woman){
            Woman w=(Woman)h;
            w.woman();
        }
        else{
            System.out.println("类型不符!");
        }
    }

}

时间: 2024-11-05 03:51:00

作业-继承4的相关文章

作业-继承

实现如下类之间的继承关系,并编写Music类来测试这些类. package T092201; public class Instrument { public void play() { System.out.println("弹奏乐器!"); } } package T092201; public class Wind extends Instrument{ public void play() { System.out.println("弹奏Wind!"); }

作业-继承6

按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长.宽两种属性,和计算面积方法. (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长.宽.高属性, 和计算体积的方法. (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长. 宽.高,输出其底面积和体积. package T092205; public class Juxing { private double chang; private double kuan; public double get

作业-继承8

编写一个Shape类,具有属性:周长和面积: 定义其子类三角形和矩形,分别具有求周长的方法. 定义主类E,在其main方法中创建三角形和矩形类的对象, 并赋给Shape类的对象a.b,使用对象a.b来测试其特性. package T092208; public class Shape { private int bian; private double zhouchang; private double mianji; public int getBian() { return bian; }

作业-继承2

创建如下三个类:(People类中的三个方法分别输出一些信息,ChinaPeople 和AmericanPeople类重写父类的三个方法). package T092202; public class People { protected double height; protected double weight; public double getHeight() { return height; } public void setHeight(double height) { this.h

作业-继承7

编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数 wheels和车重weight.小车类Car是Vehicle的子类,其中包含的属性有载人数 loader.卡车类Truck是Car类的子类,其中包含的属性有载重量payload.每个 类都有构造方法和输出相关数据的方法.最后,写一个测试类来测试这些类的功 能. package T092206; public class Vehicle { private int wheels; private double weigh

作业-继承5

编写一个Animal类,具有属性:种类:具有功能:吃.睡.定义其子类Fish 和Dog,定义主类E,在其main方法中分别创建其对象并测试对象的特性. package T092205; public class Animal { private String zhonglei; public String getZhonglei() { return zhonglei; } public void setZhonglei(String zhonglei) { this.zhonglei = zh

c++第四次作业 继承和派生

[cpp] view plain copy 在CODE上查看代码片派生到我的代码片 /* * 文件名称:hj.cpp * 作    者:仲海亮 * 完成日期:2015 年 5月 6 日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分: * 输入描述:无 * 问题描述: * 程序输出: * 问题分析:略 * 算法设计:略 */ #include <iostream> #include <string> using namespace std; class Person {

Spring中Quartz调度器的使用

一.Quartz的特点 * 按作业类的继承方式来分,主要有以下两种: 1.作业类继承org.springframework.scheduling.quartz.QuartzJobBean类的方式 2.作业类不继承org.springframework.scheduling.quartz.QuartzJobBean类的方式 注:个人比较推崇第二种,因为这种方式下的作业类仍然是POJO. * 按任务调度的触发时机来分,主要有以下两种: 1.每隔指定时间则触发一次,对应的调度器为org.springf

面向对象第一次Coding总结暨感想

已经不是第一次敲Java了,真的应该感谢学院在大一暑期的时候开设了面向对象先导课程,让我好歹磕磕绊绊地过了编手,不至于在OO课来临直接过于难受.其实我跟JAVA有着很大的缘分,记得大一的时候,学院给我们开设了第二课堂,大部分同学为了给下学期的数据结构打好基础选择了C语言,偏偏我头铁,以为要把眼光放得长远选择了Java.结果可想而知,一点点编程基础没有的我在满是大佬的课堂疯狂划水,讲的东西一个字都听不懂,整个学期唯一的收获大概就是电脑上安装了Eclipse.暑期课程抢救了我,在安装了Eclipse