赞
踩
目录
第1关:Date类和SimpleDateFormat类的用法
共六关
根据提示,在右侧编辑器
Begin-End
处补充代码:
声明一个
Person
类,私有化属性字符串类型的name
和int类型的age
,并将字段封装起来;在
Person
类中定义一个talk()
方法,打印姓名和年龄信息;在
main
方法中声明并实例化一Person
对象p
,给p
中的属性赋值,调用talk()
方法打印我是:张三,今年:18岁
。注意:输出语句中“:”和“,”都是中文标点
去掉不必要的语句,以下写法算是简单的吧。
- package case1;
-
- public class TestPersonDemo {
- public static void main(String[] args) {
- /********* begin *********/
- // 声明并实例化一Person对象p
- Person p=new Person("张三",18);
- // 给p中的属性赋值
- // 调用Person类中的talk()方法
- p.talk();
- /********* end *********/
-
- }
- }
-
- // 在这里定义Person类
- class Person {
- /********* begin *********/
- private String name;
- private int age;
- public Person(String name,int age){
- this.name=name;
- this.age=age;
- }
- public void talk(){
- System.out.print("我是:"+this.name+",今年:"+this.age+"岁");
- }
- /********* end *********/
- }
根据提示,在右侧编辑器
Begin-End
处补充代码:
声明一个
Animal
类,将属性name
和age
封装起来,提供对外的公共访问方法,定义Animal
的intro
方法,打印出名字和年龄信息,如:大黑狗8岁
;声明一个
Cat
类和Dog
类,都继承Animal
类,分别定义各自的voice
方法和eat
方法;在
main
方法中分别实例化一个Cat
对象和Dog
对象,设置各自的属性并调用这两个方法,再调用intro
方法,打印出名字和年龄信息;具体具体输出要求请看测试说明。
- package case2;
-
- public class ExtendsTest {
- public static void main(String args[]) {
- // 实例化一个Cat对象,设置属性name和age,调用voice()和eat()方法,再打印出名字和年龄信息
- /********* begin *********/
- Cat cat=new Cat();
- cat.name="大花猫";
- cat.age=6;
- /********* end *********/
- cat.voice();
- cat.eat();
- cat.intro();
- // 实例化一个Dog对象,设置属性name和age,调用voice()和eat()方法,再打印出名字和年龄信息
- /********* begin *********/
- Dog dog=new Dog();
- dog.name="大黑狗";
- dog.age=8;
- dog.voice();
- dog.eat();
- dog.intro();
- /********* end *********/
-
- }
- }
-
- class Animal {
- /********* begin *********/
- // 定义实例变量
- String name;
- int age;
- // 定义Getter/Setter方法
- 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;
- }
- // 定义Animal的intro方法
- public void intro(){
- System.out.println(this.name+this.age+"岁");
- }
- /********* end *********/
-
- }
-
- class Cat extends Animal{
- // Cat继承Animal类
- // 定义Cat类的voice()和eat()方法
- /********* begin *********/
- public void voice(){
- System.out.println(getName()+"喵喵叫");
- }
- public void eat(){
- System.out.println(getName()+"吃鱼");
- }
- /********* end *********/
- }
-
- class Dog extends Animal{
- // Dog继承Animal类
- // 定义Dog类的voice()和eat()方法
- /********* begin *********/
- public void voice(){
- System.out.println(getName()+"汪汪叫");
- }
- public void eat(){
- System.out.println(getName()+"吃骨头");
- }
- /********* end *********/
- }
根据提示,在右侧编辑器
Begin-End
处补充代码:
声明一个名为
Person
的类,里面有name
与age
两个属性,并声明一个含有两个参数的构造方法;声明一个名为
Student
的类,此类继承自Person
类,添加一个属性school
,在子类的构造方法中调用父类中有两个参数的构造方法;定义一个intro方法,进行自我介绍,输出格式:姓名:张三,年龄:18,学校:哈佛大学
。注意:输出语句中“,”和“:”均为中文标点符号。实例化一个
Student
类的对象s
,为Student
对象s
中的school
赋值,调用intro方法,打印输出姓名:张三,年龄:18,学校:湖南中医药大学
。
- package case3;
-
- public class SuperTest {
- public static void main(String[] args) {
- // 实例化一个Student类的对象s,为Student对象s中的school赋值,打印输出信息
- /********* begin *********/
- Student s=new Student("张三",18,"湖南中医药大学");
- s.intro();
- /********* end *********/
- }
- }
-
- class Person {
- /********* begin *********/
- String name;
- int age;
- Person(String name,int age){
- this.name=name;
- this.age=age;
- }
- /********* end *********/
- }
-
- class Student extends Person{
- // Student类继承自Person类
- /********* begin *********/
- String school;
- Student(String name,int age,String school){
- super(name,age);
- this.school=school;
- }
- void intro(){
- System.out.println("姓名:"+super.name+",年龄:"+super.age+",学校:"+this.school);
- }
- /********* end *********/
-
- }
根据提示,在右侧编辑器补充代码。
声明一个名为
Person
的类,里面声明name
与age
两个属性,定义intro()
方法返回姓名和年龄信息;声明一个名为
Student
的类,此类继承自Person
类,添加school
属性,声明带三个参数的构造方法,复写intro()
方法,在该方法中调用父类的intro()
方法,返回姓名、年龄和学校信息;实例化子类对象
s
,调用intro()
方法打印我是:张三,今年:18岁,我在湖南中医药大学上学
。
- package case4;
-
- public class OverridingTest {
- public static void main(String[] args) {
- // 实例化子类对象s,调用intro()方法打印信息
- /********* begin *********/
- Student s=new Student("张三",18,"湖南中医药大学");
- s.intro();
- /********* end *********/
-
- }
- }
-
- class Person {
- /********* begin *********/
- String name;
- int age;
- Person(String name,int age){
- this.name=name;
- this.age=age;
- }
- void intro(){
- System.out.print("我是:"+name+",今年:"+age+"岁");
- }
- /********* end *********/
- }
-
- class Student extends Person{
- /********* begin *********/
- String school;
- Student(String name,int age,String school){
- super(name,age);
- this.school=school;
- }
- void intro(){
- super.intro();
- System.out.println(",我在"+this.school+"上学");
- }
- /********* end *********/
- }
根据提示,在右侧编辑器
Begin-End
处补充代码:
仔细阅读代码,在右侧编辑器中调整代码使程序能正确编译运行;
具体输出要求请看测试说明。
这道题把原测试代码中的三个final去掉就可以通过
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。