zoukankan      html  css  js  c++  java
  • day08

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

    复制代码
     
      public class Animal {
          public void eat(){
              System.out.println("要吃饭");
          }
          public void run(){
              System.out.println("会跑步");
          }
         public void sleep(){
             System.out.println("要睡觉");
         }
     }
    复制代码
    复制代码
    public class Dog  extends Animal{
        public void eat(){
            System.out.println("狗要吃那啥");
        }
        public void run(){
            System.out.println("狗跑的如脱缰的野狗");
        }
    
        public void cry(){
            System.out.println("狗会汪汪叫");
        }
    }
    复制代码
    复制代码
     
      public class DogTest {
          public static void main(String[] args) {
              Dog dog=new Dog();
              dog.eat();
              dog.run();
              dog.sleep();
              dog.cry();
     
         }
     }
    复制代码




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

    复制代码
     
     public abstract class Phone {
         public void call(){
             System.out.println("打电话");
         }
         public void sendMessage(){
             System.out.println("发短信");
         }
         public abstract void  playGame();
     }
     



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

    复制代码
     
     public class IPhone extends Phone {
         public void sendMessage(){
             System.out.println("发彩信");
         }
     
         @Override
         public void playGame() {
             System.out.println("打王者农药");
         }
         public void siri(){
             System.out.println("人工智障");
     
         }}
    复制代码


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

    复制代码
     public class IPhoneTest {
         public static void main(String[] args) {
             IPhone iPhone=new IPhone();
             iPhone.call();
             iPhone.sendMessage();
             iPhone.playGame();
             iPhone.siri();
         }
     
     
    }
    复制代码



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

    复制代码
     
     public class Person {
            public String name;
           public int age;
     
         public Person(String name, int age) {
             this.name = name;
             this.age = age;
         }
     
         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("我是山顶洞人");
         }
     
     
     }
    复制代码


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

    复制代码
     public class Student extends Person{
         private  String school;
     
         public Student() {
         }
     
         public Student(String name, int age, String school) {
             super(name, age);
             this.school = school;
         }
     
         public String getSchool() {
             return school;
         }
     
         public void setSchool(String school) {
             this.school = school;
         }
        public void printStudent(){
            System.out.println("我叫"+name+",我今年"+age+"岁,我现在的学校是:"+school);
            printPerson();
         }
     }
    复制代码


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

    复制代码
     public class StudentTest {
         public static void main(String[] args) {
             Student s=new Student("卡特琳娜",19,"战争学院");
             s.printStudent();
         }
     
     
     }
    复制代码



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

    复制代码
     public abstract class Phone {
         public  String brank;
     
         public Phone() {
         }
     
         public Phone(String brank) {
             this.brank = brank;
         }
     
         public String getBrank() {
             return brank;
         }
     
         public void setBrank(String brank) {
             this.brank = brank;
         }
       public  abstract void playMusic(String s);
     
     }
    复制代码


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

    复制代码
    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)方法,传入参数"菊花台"
    打印出如下语句:
    华为手机正在播放歌曲:菊花台

    复制代码
     public class TestDome {
         public static void main(String[] args) {
             IPhone phone=new IPhone();
            phone.playMusic("菊花台");
         }
     }
    复制代码




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

    复制代码
     public class Phone {
         public  String brank;
         public  int price;
     
         public Phone() {
         }
     
         public Phone(String brank, int price) {
             this.brank = brank;
             this.price = price;
         }
     
         public String getBrank() {
             return brank;
         }
     
         public void setBrank(String brank) {
             this.brank = brank;
         }
     
         public int getPrice() {
             return price;
         }
     
         public void setPrice(int price) {
             this.price = price;
         }
     }
    复制代码


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

    复制代码
     public class Person extends Phone {
         public String name;
         public  int age;
     
         public Person() {
         }
     
         public Person(String name, int age) {
             this.name = name;
             this.age = 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 void  palyPhone(Phone p){
       System.out.println(age+"岁的"+name+"正在玩手机,手机品牌是"+p.brank+",价格为"+p.price);
      }  }
    复制代码


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

    复制代码
       public class TestDemo {
          public static void main(String[] args) {
              Person ren=new Person("罗永浩",40);
     
     
       }  }
    复制代码

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

    复制代码
       public abstract class Study {
          public Study() {
          }
      
          public abstract void stu(Phone p);
      
          public void info1(){
            System.out.println("好好学习,天天向上");
         }
         public 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 {
         public  String brand;
         public  int price;
     
         public Phone() {
         }
     
         public Phone(String brand, int price) {
             this.brand = brand;
             this.price = 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  void printPhone(){
             brand="华为";
             price=1999;
             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 {
        public String name;
         public int age;
     
         public Student(String name, int age) {
             this.name = name;
             this.age = age;
         }
    
         public Student() {
         }
     
         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 studying(Learn le){
            Phone p=new Phone();
             age=15;
             name="关晓彤";
            System.out.println(age+"岁的"+name+"学习中");
            le.info1();
            le.info2();
            le.stu(p);
         }
     
     }
    复制代码
    复制代码
    public abstract class Learn extends Study {
    
    public void stu(Phone p) {
        p.printPhone();
    }
    
    
    }
    复制代码


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

    复制代码
     public class TestDome {
     
         public static void main(String[] args) {
     
             Student s=new Student();
             Learn le=new Learn() {
                 @Override
                 public void stu(Phone p) {
                     super.stu(p);
                 }
             };
             s.studying(le);
         }
     }
    复制代码
  • 相关阅读:
    fullCalendar改造计划之带农历节气节假日的万年历(转)
    Linked List Cycle
    Remove Nth Node From End of List
    Binary Tree Inorder Traversal
    Unique Binary Search Trees
    Binary Tree Level Order Traversal
    Binary Tree Level Order Traversal II
    Plus One
    Remove Duplicates from Sorted List
    Merge Two Sorted Lists
  • 原文地址:https://www.cnblogs.com/csk001/p/13848983.html
Copyright © 2011-2022 走看看