zoukankan      html  css  js  c++  java
  • 第八次作业!

    必做题:

    ========================================

    第一题:

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

        }

        public Person(String name, int age) {

            this.name = name;

            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 student=new Student("卡特琳娜",19,"战争学院");

            student.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)方法,传入参数"菊花台"

    打印出如下语句:

    华为手机正在播放歌曲:菊花台

    public abstract class Phone {

        String brand;

        public Phone() {

            super();

        }

        public Phone(String brand) {

            super();

            this.brand = brand;

        }

        public String getBrand() {

            return brand;

        }

        public void setBrand(String brand) {

            this.brand = brand;

        }

        abstract void playMusic(String s);

    }

    public class IPhone extends Phone {

        public IPhone() {

            // TODO Auto-generated constructor stub

        }

        @Override

        void playMusic(String s) {

            // TODO Auto-generated method stub

            System.out.println(brand+"手机正在播放歌曲:"+s);

        }

    }

    public class TestDemo {

        public static void main(String[] args) {

            IPhone phone=new IPhone();

            phone.brand="华为";

            phone.playMusic("菊花台");

            //Phone a=new Phone();

        }

    }

    加强题:

    =============================================================================

    第五题:

    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

    public class Phone {

        String brand;

        int price;

        public Phone() {

            super();

        }

        public Phone(String brand, int price) {

            super();

            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 class Person{

        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;

        }

        Person(){

            super();

        }

        Person(String name,int age){

            super();

            this.name=name;

            this.age=age;

        }

        public void palyPhone(Phone p) {

            System.out.println(age+"岁的"+name+"正在玩手机,手机品牌是"+p.brand+",价格为"+p.price);

        }

    }

    public class TestDemo {

        public static void main(String[] args) {

            Person ren=new Person("罗永浩", 40);

            Phone p = new Phone("小米",2999);

            ren.palyPhone(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);

        }

    }

  • 相关阅读:
    OLTP与OLAP
    Entity Framework(07):TPH、TPT、TPC与继承类
    Entity Framework(05):主从表的增删改
    Entity Framework(06):配置关系
    Entity Framework(04):主从表数据加载方式
    Entity Framework(03):Code First基础
    Entity Framework(02):模型优先 ,ObjectContext类
    Entity Framework(01):模型优先,Linq to Entities
    简介LINUX远程联机软件:PUTTY、SecureCRT、X-Manager
    php函数分割
  • 原文地址:https://www.cnblogs.com/gxt123/p/13849136.html
Copyright © 2011-2022 走看看