第八次

.定义一个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);

}

 

上一篇:继承,多态


下一篇:java给图片写正反字体,并将二维码写到图片上,代码实现