zoukankan      html  css  js  c++  java
  • 作业8

    必做题:
    ========================================
    第一题:
    1.定义一个Animal类,包含如下行为:
    eat() 打印"要吃饭"
    run() 打印"会跑步"
    sleep() 打印"要睡觉"
    2.定义一个Dog类,继承Animal类,重写eat(),run()方法
    定义自己特有的行为 :
    cry() 打印"狗会汪汪叫"
    3.定义测试类DogTest, 创建Dog的对象,依次调用eat(),run(),sleep(),cry()方法,打印出如下语句
    狗要吃那啥
    狗跑的如脱缰的野狗
    要睡觉
    狗会汪汪叫

    Animal类

    public class Animal {
    public void eat(){
    System.out.println("要恰饭");
    }
    public void run(){
    System.out.println("能跑步");
    }
    public void sleep(){
    System.out.println("会睡觉");
    }
    }

    Dog类

    public class Dog extends Animal{

    @Override
    public void eat(){
    System.out.println("要恰饭啦");
    }
    public void run(){
    System.out.println("准备跑步了塞");
    }
    public void cry(){
    System.out.println("狗还会说话呢");
    }
    }

    DogTest

    public class DogTest {
    public static void main(String[] args) {
    Dog d=new Dog();
    d.eat();
    d.run();
    d.sleep();
    d.cry();
    }
    }



    第二题:
    1.定义一个Phone抽象类,包含如下方法:
    普通方法: call() 输出:"打电话"
    普通方法: sendMessage() 输出:"发短信"
    抽象方法: playGame();

    2.定义一个IPhone类,继承Phone类
    重写sendMessage()方法,输出:"发彩信"
    实现playGame()方法,输出:"打王者农药"
    定义自己特有的行为 :
    siri() 打印"人工智障"

    3.定义测试类IPhoneTest, 创建IPhone的对象,调用方法,打印出如下语句
    打电话
    发彩信
    打王者农药
    人工智障

    Phone类

    public abstract class Phone {
    public void call(){
    System.out.println("可以打电话啊");
    }
    public void sendMessage(){
    System.out.println("可以发短信啊");
    }
    public abstract void playGame();
    }

    Phone类

    public class IPhone extends Phone{

    @Override
    public void playGame() {
    System.out.println("玩Python动画");
    }
    @Override
    public void sendMessage(){
    System.out.println("还可以发彩信哈");
    }
    public void siri(){
    System.out.println("人工智能机器人为您服务");
    }
    }

    IPhone类

    public class IPhone {
    public static void main(String[] args) {
    IPhone i=new IPhone();
    i.call();
    i.sendMessage();
    i.playGame();
    i.siri();
    }
    }




    第三题:
    1.定义Person类,包含空参、满参构造和以下成员变量:
    姓名name
    年龄age
    生成所有成员变量set/get方法
    定义方法:void printPerson(),打印出"我是山顶洞人"

    2.定义Student继承于Person类,新增如下属性
    学校 school
    生成空参、满参构造和set/get方法
    定义方法:void printStudent(),先输出"我叫XXX,我今年YYY岁,我现在的学校是:ZZZ" 再调用printPerson()方法

    3.在测试类中,创建并初始化一个Student 对象 s, 调用printStudent()方法,打印出如下语句:
    我叫卡特琳娜,我今年19岁,我现在的学校是:战争学院
    我是山顶洞人

    Phone类

    public class Person {
    String name;
    int age;
    public Person(String name, int age) {
    this.name = name;
    this.age = age;
    }
    public Person(String name, int age, String school) {

    }
    public Person(){
    }
    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 printPerson() {
    System.out.println("我是中国人");
    }
    }

    Student类

    public class Student extends Person{
    String school;

    public Student(String name, int age, String school) {
    super(name, age,school);
    }

    public Student() {

    }
    public Student(String school) {
    this.school = school;
    }

    public void printStudent() {
    System.out.println("我是" + name + "今年" + age + "我现在的学校是" + school);
    Person p=new Person();
    p.printPerson();
    }
    }

    测试类

    public class Demo{
    public static void main(String[] args) {
    Student s1=new Student();
    s1.setName("卡特琳娜");
    s1.setAge(19);
    s1.school="战争学院";
    s1.printStudent();
    }
    }



    第四题:
    1.定义抽象类Phone,要求如下:
    包含空参、满参构造和以下成员变量
    品牌 brand( String 型)
    生成所有成员变量set/get方法
    定义抽象方法:void playMusic(String s)
    2.定义类IPhone,要求如下:
    继承抽象类 Phone
    构造方法包括:空参构造和满参构造方法
    重写抽象方法:
    void playMusic(String s),要求:输出打印"XXX手机正在播放歌曲:s"
    PS:XXX是Phone类中的 brand属性值,s是传入的参数
    3.定义测试类TestDemo,在main方法实现以下功能:
    创建并初始化一个IPhone 对象 phone,调用phone的playMusic(String s)方法,传入参数"菊花台"
    打印出如下语句:
    华为手机正在播放歌曲:菊花台

    Phone类

    public abstract class Phone {
    String brand;

    public Phone(String brand) {
    this.brand = brand;
    }
    public Phone(){

    }
    abstract void playMusic(String s);
    public String getBrand() {
    return brand;
    }

    public void setBrand(String brand) {
    this.brand = brand;
    }

    public void call(){
    System.out.println("可以打电话啊");
    }
    public void sendMessage(){
    System.out.println("可以发短信啊");
    }
    public abstract void playGame();
    }

    IPhone类

    public class IPhone extends Phone{
    void IPhone(){

    }
    void IPhone(String brand){

    }
    @Override
    void playMusic(String s) {
    System.out.println(brand+"手机正在播放音乐:"+s);
    }

    @Override
    public void playGame() {

    }
    }

    测试类

    public class Demo04 {
    public static void main(String[] args) {
    IPhone phone=new IPhone();
    phone.setBrand("华为");
    phone.playMusic("菊花爆满山");

    }
    }


    加强题:
    =============================================================================
    第五题:
    1.定义一个Phone类.包含如下属性
    品牌brand
    价格price
    生成所有成员变量set/get方法,空参构造和有参构造

    2.定义一个Person类,包含如下属性
    姓名name
    年龄age
    生成所有成员变量set/get方法,空参构造和有参构造
    定义一个玩手机行为 palyPhone(Phone p) 要求打印:"YYY岁的XXX正在玩手机,手机品牌是ZZZ,价格为QQQ

    PS:YYY是Person类中的 age属性值,XXX是Person 类中的 name属性值,ZZZ是Phone 类中的 brand属性值,QQQ是Phone 类中的 price属性值"

    3.在测试类TestDemo中,创建Person对象ren,调用ren的 palyPhone(Phone p) 方法,打印出
    "40岁的罗永浩正在玩手机,手机品牌是小米,价格为2999"
    ps:参数p需要自行创建并初始化变量brand与 price

    Phone4类

    public class Phone4 {
    String brand;
    int price;
    public Phone4(String brand, int price) {
    this.brand = brand;
    this.price = price;
    }

    public Phone4() {

    }

    public void Phone4(){

    }
    public String getBrand() {
    return brand;
    }

    public void setBrand(String brand) {
    this.brand = brand;
    }

    public int getPrice() {
    return price;
    }

    public void setPrice(int price) {
    this.price = price;
    }
    }

     Person4类

    public class Person4 extends Phone4{
    String name;
    int age;

    public Person4(String brand, int price) {
    super(brand, price);
    }

    public Person4() {
    super();
    }
    //void palyPhone(Phone4 p){

    //}
    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 palyPhone(Object phone4, Object p) {
    System.out.println(age+"岁的"+name+"正在玩手机,手机品牌是"+brand+"价格为"+price);
    }
    }

    测试类

    public class Demo05 {
    private static Object Phone4;
    public static void main(String[] args) {
    Person4 ren=new Person4();
    ren.setName("罗永浩");
    ren.setAge(40);
    ren.setBrand("小米");
    ren.setPrice(2999);
    Object p = null;
    ren.palyPhone(Phone4 ,p);
    }
    }


    第六题:

    1.定义抽象类Study,要求如下:

    包含空参、满参构造和以下成员方法

    定义抽象方法:void stu(Phone p);

    定义普通方法: void info1()  打印"好好学习,天天向上"

    定义普通方法: void info2()  打印"键盘敲烂,月薪过万"

    public abstract class Study {

        Study(){

            super();

        }

        abstract void stu(Phone p);

        void info1(){

            System.out.println("好好学习,天天向上");

        }

        void info2(){

            System.out.println("键盘敲烂,月薪过万");

        }

    }

    2.定义类Phone,要求如下:

    包含空参、满参构造和以下成员变量

    品牌 brand

    价格 price

            生成所有成员变量set/get方法

            定义方法:void printPhone(),打印出Phone的具体信息,如"XXX手机,价格YYY"

    ps: XXX为Phone类的brand属性 yyy为Phone类的price属性

    public class Phone {

        String brand;

        int price;

        public String getBrand() {

            return brand;

        }

        public void setBrand(String brand) {

            this.brand = brand;

        }

        public int getPrice() {

            return price;

        }

        public void setPrice(int price) {

            this.price = price;

        }

        public Phone() {

            super();

        }

        public Phone(String brand, int price) {

            super();

            this.brand = brand;

            this.price = price;

        }

        void printPhone(){

            System.out.println(brand+"手机,价格"+price);

        }

    }

    3.定义类Student,包含空参、满参构造和以下成员变量

            姓名 name(String 型)

    年龄 age(int型)

            生成所有成员变量set/get方法

    定义成员方法:void studying(Learn le),要求:

    1.输出“yyy岁的xxxx学习中”,

    2.然后在方法内通过传入的Learnd对象le依次调用info1(),info2(),stu(Phone p)方法

    ps: yyy为Student类中的age方法,xxxx为Student类中的name方法,

    ps: Learn继承于Study类,需要实现stu(Phone p)抽象方法,实现要求:调用参数p的printPhone()方法;

    public class Student {

        String name;

        int age;

        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 Student() {

            super();

        }

        public Student(String name, int age) {

            super();

            this.name = name;

            this.age = age;

        }

        void studying(Learn le){

            Phone p =new Phone("华为", 1999);

            System.out.println(age+"岁的"+name+"学习中");

            le.info1();

            le.info2();

            le.stu(p);

        }

    }

    public class Learn extends Study {

        @Override

        void stu(Phone p) {

            // TODO Auto-generated method stub

            p.printPhone();

        }

    }

    4.定义测试类中,创建并初始化一个Student 对象 s, 调用studying(Learn le)方法,打印出如下语句:

    15岁的关晓彤学习中

    好好学习,天天向上

    键盘敲烂,月薪过万

    华为手机,价格1999

    public class Demo {

        public static void main(String[] args) {

            Student s =new Student("关晓彤",15);

            Learn le = new Learn();

            s.studying(le);

        }

    }

  • 相关阅读:
    零点起飞学Word与Excel高效办公实战与技巧
    C语言核心技术(原书第2版)
    完全精通Nuendo电脑音乐及音频制作:精细操作与实践指南
    1035.找出直系亲属(floyd)
    1033.继续XXX定律
    1034.寻找大富翁
    1032.ZOJ问题
    1029.魔咒词典
    1031.XXX定律
    1028.继续畅通工程
  • 原文地址:https://www.cnblogs.com/moranqingcheng/p/13849819.html
Copyright © 2011-2022 走看看