java简单作业题 22
1、封装一个时间类MyTime,包含一个构造器,3个私有成员变量hour、minute、second以及与它们相应的set和get方法。(如hour有getHour和se...
1、封装一个时间类MyTime,包含一个构造器,3个私有成员变量hour、minute、second以及与它们相应的set和get方法。(如hour有getHour和setHour方法,分别表示获得hour和设置hour)。并重写toString()方法(该方法描述对象,相当于自我介绍,格式如下:public String toString() )。
2、封装一个日期类MyDate,包含一个构造器,3个私有成员变量year、mouth和day以及它们相对应的set和get方法。并重写toString()方法。
3、创建一个FullTime类。其中包含一个MyTime类型的私有成员变量以及与之相对应的set和get方法.一个MyDate类型的私有成员变量以及相对应的set和get方法。并重写toString()方法。假定当前时间为2007年10月2日14点17分35秒,编写用户程序TestFullTime,用FullTime类设置时间为以上的时间,并打印。
4、设计一个动物(Animal)类继承自object。Animal类中有一个吼叫(bark)的方法。并在bark方法中实现动物吼叫的具体实现。再设计三个类Dog类、Cat类、Serpent类。并且让这三个类都继承Animal类。并重写Animal中的bark方法。同时在Serpent类的bark方法中加入修饰符final关键字。全部实现各自类的构造方法。
要求:
建一测试类(Test),在类中通过Dog dog = new Dog()这样子的方式,查看类的继承中构造方法的调用顺序。调用其bark方法。
如何在调用Dog中的bark方法的同时,也同时执行Animal中的bark方法。(强调知识点super关键字)
再创建一个眼镜蛇(Cobra)类去继承Serpent这个类。然后测试能否重写bark这个方法。(强调知识点final关键字)
在线急等 有会的可以先回答我哪一题。 展开
2、封装一个日期类MyDate,包含一个构造器,3个私有成员变量year、mouth和day以及它们相对应的set和get方法。并重写toString()方法。
3、创建一个FullTime类。其中包含一个MyTime类型的私有成员变量以及与之相对应的set和get方法.一个MyDate类型的私有成员变量以及相对应的set和get方法。并重写toString()方法。假定当前时间为2007年10月2日14点17分35秒,编写用户程序TestFullTime,用FullTime类设置时间为以上的时间,并打印。
4、设计一个动物(Animal)类继承自object。Animal类中有一个吼叫(bark)的方法。并在bark方法中实现动物吼叫的具体实现。再设计三个类Dog类、Cat类、Serpent类。并且让这三个类都继承Animal类。并重写Animal中的bark方法。同时在Serpent类的bark方法中加入修饰符final关键字。全部实现各自类的构造方法。
要求:
建一测试类(Test),在类中通过Dog dog = new Dog()这样子的方式,查看类的继承中构造方法的调用顺序。调用其bark方法。
如何在调用Dog中的bark方法的同时,也同时执行Animal中的bark方法。(强调知识点super关键字)
再创建一个眼镜蛇(Cobra)类去继承Serpent这个类。然后测试能否重写bark这个方法。(强调知识点final关键字)
在线急等 有会的可以先回答我哪一题。 展开
2个回答
展开全部
public class MyDate {
private int year ;
private int month ;
private int day ;
public MyDate(){}
public MyDate(int year, int month, int day) {
super();
this.year = year;
this.month = month;
this.day = day;
}
public String toString() {
return "MyDate ==>"+year+"-"+month+"-"+day;
}
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
public int getMonth() {
return month;
}
public void setMonth(int month) {
this.month = month;
}
public int getDay() {
return day;
}
public void setDay(int day) {
this.day = day;
}
}
public class MyTime {
public static void main(String[] args) {
MyTime time = new MyTime(14,53,20);
System.out.println(time.toString());
}
private int hour;
private int minute;
private int second;
public MyTime() {
}
public MyTime(int hour, int minute, int second) {
super();
this.hour = hour;
this.minute = minute;
this.second = second;
}
public String toString() {
return "current time==>"+hour + ":" + minute + ":" + second;
}
public int getHour() {
return hour;
}
public void setHour(int hour) {
this.hour = hour;
}
public int getMinute() {
return minute;
}
public void setMinute(int minute) {
this.minute = minute;
}
public int getSecond() {
return second;
}
public void setSecond(int second) {
this.second = second;
}
}
public class FullTime {
public static void main(String[] args) {
MyDate myDate = new MyDate(2007, 10, 2);
MyTime myTime = new MyTime(14,17,35);
FullTime fullTime = new FullTime(myDate,myTime);
System.out.println(fullTime);
}
private MyDate myDate;
private MyTime myTime;
public FullTime(MyDate myDate, MyTime myTime) {
super();
this.myDate = myDate;
this.myTime = myTime;
}
public String toString() {
String text = myDate.getYear() + "年" + myDate.getMonth() + "月"
+ myDate.getDay() + "日" + myTime.getHour() + "时"
+ myTime.getMinute() + "分" + myTime.getSecond() + "秒";
return text;
}
public MyDate getMyDate() {
return myDate;
}
public void setMyDate(MyDate myDate) {
this.myDate = myDate;
}
public MyTime getMyTime() {
return myTime;
}
public void setMyTime(MyTime myTime) {
this.myTime = myTime;
}
}
第4题,你自己想办法吧。主要知识点:
1、继承
2、super和final,这个只是表面的东西,说到底还是java中overrides(重写)的要求
3、通过多层间接的继承,你要知道的是 对象被实例化的顺序。
追问
第一二题我自己已经写好了。配合你的第三题 大致明白了 第四题 我自己在研究研究 不会就问你 谢谢啦
追答
public class Test{
public static void main(String[] args) {
Dog dog = new Dog();
dog.bark();
}
}
class Animal{
public Animal(){
System.out.println("Animal的构造方法");
}
public void bark(){
System.out.println("动物类 吼吼的方法");
}
}
class Dog extends Animal{
public Dog(){
System.out.println("Dog的构造方法");
}
public void bark(){
//调用父类的bark()方法
super.bark();
System.out.println("Dog 吼吼的方法");
}
}
class Cat extends Animal{
public Cat(){
System.out.println("Cat的构造方法");
}
public void bark(){
System.out.println("Cat 吼吼的方法");
}
}
class Serpent extends Animal{
public Serpent(){
System.out.println("Serpent的构造方法");
}
public final void bark(){
System.out.println("Serpent 吼吼的方法");
}
}
class Cobra extends Serpent{
/*
public void bark(){
System.out.println("Cobra 吼吼的方法");
}
*/
}
第四题:
(1),Animal先被实例化,然后才到子类Dog
(2),super关键字是用来获取父类的成员变量以及成员方法的。(注意这里还和访问控制符 private,protected,public,默认有关)
(3),父类的final方法是不能被子类重写的。
把分给我吧 ^_^!
展开全部
public class MyDate {
private String year;
private String mouth;
private String day;
public MyDate(String year,String mouth,String day){
this.year=year;
this.mouth=mouth;
this.day=day;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return year+"年"+mouth+"月"+day+"日";
}
public String getYear() {
return year;
}
public void setYear(String year) {
this.year = year;
}
public String getMouth() {
return mouth;
}
public void setMouth(String mouth) {
this.mouth = mouth;
}
public String getDay() {
return day;
}
public void setDay(String day) {
this.day = day;
}
}
public class MyTime {
private String hour;
private String minute;
private String second;
public MyTime(String hour,String minute,String second){
this.hour=hour;
this.minute=minute;
this.second=second;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return hour+"时"+minute+"分"+second+"秒";
}
public String getHour() {
return hour;
}
public void setHour(String hour) {
this.hour = hour;
}
public String getMinute() {
return minute;
}
public void setMinute(String minute) {
this.minute = minute;
}
public String getSecond() {
return second;
}
public void setSecond(String second) {
this.second = second;
}
}
public class FullTime {
private MyTime time;
private MyDate date;
public FullTime(MyTime time,MyDate date){
this.time = time;
this.date = date;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return date.toString()+time.toString();
}
public MyTime getTime() {
return time;
}
public void setTime(MyTime time) {
this.time = time;
}
public MyDate getDate() {
return date;
}
public void setDate(MyDate date) {
this.date = date;
}
}
public class TestFullTime {
public static void main(String[] args) {
MyDate date = new MyDate("2007","10","2");
MyTime time = new MyTime("14","17","35");
FullTime full = new FullTime(time,date);
System.out.println(full);
}
}
public class Animal {
public void bark(){
}
}
public class Cat extends Animal{
@Override
public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
public class Dog extends Animal{
@Override
public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
public class Serpent extends Animal {
@Override
final public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
public class Test {
public static void main(String[] args) {
Dog dog = new Dog();
dog.bark();
}
}
public class Cobra extends Serpent{
@Override
public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
其中 Cobra 类会报错,因为final修饰的不能重写
private String year;
private String mouth;
private String day;
public MyDate(String year,String mouth,String day){
this.year=year;
this.mouth=mouth;
this.day=day;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return year+"年"+mouth+"月"+day+"日";
}
public String getYear() {
return year;
}
public void setYear(String year) {
this.year = year;
}
public String getMouth() {
return mouth;
}
public void setMouth(String mouth) {
this.mouth = mouth;
}
public String getDay() {
return day;
}
public void setDay(String day) {
this.day = day;
}
}
public class MyTime {
private String hour;
private String minute;
private String second;
public MyTime(String hour,String minute,String second){
this.hour=hour;
this.minute=minute;
this.second=second;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return hour+"时"+minute+"分"+second+"秒";
}
public String getHour() {
return hour;
}
public void setHour(String hour) {
this.hour = hour;
}
public String getMinute() {
return minute;
}
public void setMinute(String minute) {
this.minute = minute;
}
public String getSecond() {
return second;
}
public void setSecond(String second) {
this.second = second;
}
}
public class FullTime {
private MyTime time;
private MyDate date;
public FullTime(MyTime time,MyDate date){
this.time = time;
this.date = date;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return date.toString()+time.toString();
}
public MyTime getTime() {
return time;
}
public void setTime(MyTime time) {
this.time = time;
}
public MyDate getDate() {
return date;
}
public void setDate(MyDate date) {
this.date = date;
}
}
public class TestFullTime {
public static void main(String[] args) {
MyDate date = new MyDate("2007","10","2");
MyTime time = new MyTime("14","17","35");
FullTime full = new FullTime(time,date);
System.out.println(full);
}
}
public class Animal {
public void bark(){
}
}
public class Cat extends Animal{
@Override
public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
public class Dog extends Animal{
@Override
public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
public class Serpent extends Animal {
@Override
final public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
public class Test {
public static void main(String[] args) {
Dog dog = new Dog();
dog.bark();
}
}
public class Cobra extends Serpent{
@Override
public void bark() {
// TODO Auto-generated method stub
super.bark();
}
}
其中 Cobra 类会报错,因为final修饰的不能重写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询