zoukankan      html  css  js  c++  java
  • work08

    day09作业:

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

     1 package com.hp.work08;
     2 
     3 public class Animal {
     4     public void eat(){
     5         System.out.println("要吃饭");
     6     }
     7     public void run(){
     8         System.out.println("会跑步");
     9     }
    10     public void sleep(){
    11         System.out.println("要睡觉");
    12     }
    13 }
    package com.hp.work08;
    
    public class Dog  extends Animal{
        public void eat(){
            System.out.println("狗要吃那啥");
        }
        public void run(){
            System.out.println("狗跑的如脱缰的野狗");
        }
    
        public void cry(){
            System.out.println("狗会汪汪叫");
        }
    }
     1 package com.hp.work08;
     2 
     3 public class DogTest {
     4     public static void main(String[] args) {
     5         Dog dog=new Dog();
     6         dog.eat();
     7         dog.run();
     8         dog.sleep();
     9         dog.cry();
    10 
    11     }
    12 }




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

     1 package com.hp.work08;
     2 
     3 public abstract class Phone {
     4     public void call(){
     5         System.out.println("打电话");
     6     }
     7     public void sendMessage(){
     8         System.out.println("发短信");
     9     }
    10     public abstract void  playGame();
    11 }



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

     1 package com.hp.work08;
     2 
     3 public class IPhone extends Phone {
     4     public void sendMessage(){
     5         System.out.println("发彩信");
     6     }
     7 
     8     @Override
     9     public void playGame() {
    10         System.out.println("打王者农药");
    11     }
    12     public void siri(){
    13         System.out.println("人工智障");
    14 
    15     }}


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

     1 package com.hp.work08;
     2 
     3 public class IPhoneTest {
     4     public static void main(String[] args) {
     5         IPhone iPhone=new IPhone();
     6         iPhone.call();
     7         iPhone.sendMessage();
     8         iPhone.playGame();
     9         iPhone.siri();
    10     }
    11 
    12 
    13 }



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

     1 package com.hp.work08;
     2 
     3 public class Person {
     4        public String name;
     5       public int age;
     6 
     7     public Person(String name, int age) {
     8         this.name = name;
     9         this.age = age;
    10     }
    11 
    12     public Person() {
    13     }
    14 
    15     public String getName() {
    16         return name;
    17     }
    18 
    19     public void setName(String name) {
    20         this.name = name;
    21     }
    22 
    23     public int getAge() {
    24         return age;
    25     }
    26 
    27     public void setAge(int age) {
    28         this.age = age;
    29     }
    30     public void printPerson(){
    31         System.out.println("我是山顶洞人");
    32     }
    33 
    34 
    35 }


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

     1 package com.hp.work08;
     2 
     3 public class Student extends Person{
     4     private  String school;
     5 
     6     public Student() {
     7     }
     8 
     9     public Student(String name, int age, String school) {
    10         super(name, age);
    11         this.school = school;
    12     }
    13 
    14     public String getSchool() {
    15         return school;
    16     }
    17 
    18     public void setSchool(String school) {
    19         this.school = school;
    20     }
    21    public void printStudent(){
    22        System.out.println("我叫"+name+",我今年"+age+"岁,我现在的学校是:"+school);
    23        printPerson();
    24     }
    25 }


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

     1 package com.hp.work08;
     2 
     3 public class StudentTest {
     4     public static void main(String[] args) {
     5         Student s=new Student("卡特琳娜",19,"战争学院");
     6         s.printStudent();
     7     }
     8 
     9 
    10 }



    第四题:
    1.定义抽象类Phone,要求如下:
    包含空参、满参构造和以下成员变量
    品牌 brand( String 型)
    生成所有成员变量set/get方法
    定义抽象方法:void playMusic(String s)

     1 package com.hp.work0802;
     2 
     3 public abstract class Phone {
     4     public  String brank;
     5 
     6     public Phone() {
     7     }
     8 
     9     public Phone(String brank) {
    10         this.brank = brank;
    11     }
    12 
    13     public String getBrank() {
    14         return brank;
    15     }
    16 
    17     public void setBrank(String brank) {
    18         this.brank = brank;
    19     }
    20   public  abstract void playMusic(String s);
    21 
    22 }


    2.定义类IPhone,要求如下:
    继承抽象类 Phone
    构造方法包括:空参构造和满参构造方法
    重写抽象方法:
    void playMusic(String s),要求:输出打印"XXX手机正在播放歌曲:s"
    PS:XXX是Phone类中的 brand属性值,s是传入的参数

    package com.hp.work0802;
    
    public class IPhone extends Phone{
    
        public IPhone() {
        }
    
        public IPhone(String brank) {
            super(brank);
        }
        public void playMusic(String s){
            brank="华为";
            System.out.println(brank+"手机正在播放歌曲:"+s);
        }
    }


    3.定义测试类TestDemo,在main方法实现以下功能:
    创建并初始化一个IPhone 对象 phone,调用phone的playMusic(String s)方法,传入参数"菊花台"
    打印出如下语句:
    华为手机正在播放歌曲:菊花台

    1 package com.hp.work0802;
    2 
    3 public class TestDome {
    4     public static void main(String[] args) {
    5         IPhone phone=new IPhone();
    6         phone.playMusic("菊花台");
    7     }
    8 }




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

     1 package com.hp.work0803;
     2 
     3 public class Phone {
     4     public  String brank;
     5     public  int price;
     6 
     7     public Phone() {
     8     }
     9 
    10     public Phone(String brank, int price) {
    11         this.brank = brank;
    12         this.price = price;
    13     }
    14 
    15     public String getBrank() {
    16         return brank;
    17     }
    18 
    19     public void setBrank(String brank) {
    20         this.brank = brank;
    21     }
    22 
    23     public int getPrice() {
    24         return price;
    25     }
    26 
    27     public void setPrice(int price) {
    28         this.price = price;
    29     }
    30 }


    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属性值"

     1 package com.hp.work0803;
     2 
     3 public class Person extends Phone {
     4     public String name;
     5     public  int age;
     6 
     7     public Person() {
     8     }
     9 
    10     public Person(String name, int age) {
    11         this.name = name;
    12         this.age = age;
    13     }
    14 
    15     public String getName() {
    16         return name;
    17     }
    18 
    19     public void setName(String name) {
    20         this.name = name;
    21     }
    22 
    23     public int getAge() {
    24         return age;
    25     }
    26 
    27     public void setAge(int age) {
    28         this.age = age;
    29     }
    30     public void  palyPhone(Phone p){
        System.out.println(age+"岁的"+name+"正在玩手机,手机品牌是"+p.brank+",价格为"+p.price);
    32  } 33 }


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

     1 package com.hp.work0803;
     2 
     3 public class TestDemo {
     4     public static void main(String[] args) {
     5         Person ren=new Person("罗永浩",40);
     6
      
     9  } 10 }


    第六题:
    1.定义抽象类Study,要求如下:
    包含空参、满参构造和以下成员方法
    定义抽象方法:void stu(Phone p);
    定义普通方法: void info1() 打印"好好学习,天天向上"
    定义普通方法: void info2() 打印"键盘敲烂,月薪过万"

     1 package com.hp.work0804;
     2 
     3 public abstract class Study {
     4     public Study() {
     5     }
     6 
     7     public abstract void stu(Phone p);
     8 
     9     public void info1(){
    10         System.out.println("好好学习,天天向上");
    11     }
    12     public void info2(){
    13         System.out.println("键盘敲烂,月薪过万");
    14     }
    15 }



    2.定义类Phone,要求如下:
    包含空参、满参构造和以下成员变量
    品牌 brand
    价格 price
    生成所有成员变量set/get方法
    定义方法:void printPhone(),打印出Phone的具体信息,如"XXX手机,价格YYY"
    ps: XXX为Phone类的brand属性 yyy为Phone类的price属性

     1 package com.hp.work0804;
     2 
     3 public class Phone {
     4     public  String brand;
     5     public  int price;
     6 
     7     public Phone() {
     8     }
     9 
    10     public Phone(String brand, int price) {
    11         this.brand = brand;
    12         this.price = price;
    13     }
    14 
    15     public String getBrand() {
    16         return brand;
    17     }
    18 
    19     public void setBrand(String brand) {
    20         this.brand = brand;
    21     }
    22 
    23     public int getPrice() {
    24         return price;
    25     }
    26 
    27     public void setPrice(int price) {
    28         this.price = price;
    29     }
    30     public  void printPhone(){
    31         brand="华为";
    32         price=1999;
    33         System.out.println(brand+"手机,价格"+price);
    34     }
    35 
    36 }


    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()方法;

     1 package com.hp.work0804;
     2 
     3 public class Student {
     4     public String name;
     5     public int age;
     6 
     7     public Student(String name, int age) {
     8         this.name = name;
     9         this.age = age;
    10     }
    11 
    12     public Student() {
    13     }
    14 
    15     public String getName() {
    16         return name;
    17     }
    18 
    19     public void setName(String name) {
    20         this.name = name;
    21     }
    22 
    23     public int getAge() {
    24         return age;
    25     }
    26 
    27     public void setAge(int age) {
    28         this.age = age;
    29     }
    30    public void studying(Learn le){
    31         Phone p=new Phone();
    32         age=15;
    33         name="关晓彤";
    34        System.out.println(age+"岁的"+name+"学习中");
    35        le.info1();
    36        le.info2();
    37        le.stu(p);
    38     }
    39 
    40 }
    package com.hp.work0804;
    
    public abstract class Learn extends Study {
    
    public void stu(Phone p) {
        p.printPhone();
    }
    
    
    }


    4.定义测试类中,创建并初始化一个Student 对象 s, 调用studying(Learn le)方法,打印出如下语句:
    15岁的关晓彤学习中
    好好学习,天天向上
    键盘敲烂,月薪过万
    华为手机,价格1999

     1 package com.hp.work0804;
     2 
     3 public class TestDome {
     4 
     5     public static void main(String[] args) {
     6 
     7         Student s=new Student();
     8         Learn le=new Learn() {
     9             @Override
    10             public void stu(Phone p) {
    11                 super.stu(p);
    12             }
    13         };
    14         s.studying(le);
    15     }
    16 }
  • 相关阅读:
    Smobiler如何实现.net一键开发,ios和android跨平台运行
    使用Smobiler实现类似美团的界面
    疫情当下,企业系统如何快速实现移动化?
    Smobiler针对百度文字识别SDK动态编译与运行
    smobiler自适应不同手机分辨率
    仓库管理移动应用解决方案——C#开发的移动应用开源解决方案
    移动OA办公——Smobiler第一个开源应用解决方案,快来get吧
    react-native 标题随页面滚动显示和隐藏
    react-native 键盘遮挡输入框
    解决adb网络连接中出现的“由于目标计算机积极拒绝,无法连接”错误
  • 原文地址:https://www.cnblogs.com/lemperor/p/13846719.html
Copyright © 2011-2022 走看看