码迷,mamicode.com
首页 > 其他好文 > 详细

继承0920作业

时间:2016-09-21 00:01:58      阅读:386      评论:0      收藏:0      [点我收藏+]

标签:

第一题:

编写一个类A,该类创建的对象可以调用方法showA输出小写的英文字母表。然后再编写一个A类的子类B,子类B创建的对象不仅可以调用方法showA输出小写的英文字母表,而且可以调用子类新增的方法showB输出大写的英文字母表。最后编写主类C,在主类的main方法

中测试类A与类B

 

package com.jicheng0920;

public class A {
	public void showA()
	{
		char zimu=‘a‘;
		for(int i=0;i<26;i++)
		{
			System.out.print(zimu+" ");
			if(zimu==‘z‘)
			{
				System.out.println();
			}
			zimu++;
		}
		
	}

}


package com.jicheng0920;

public class B extends A {
	
	public void showA()
	{
		char zimu=‘A‘;
		for(int i=0;i<26;i++)
		{
			System.out.print(zimu+" ");
			zimu++;
		}	
	}
}


package com.jicheng0920;

public class C {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		A a=new A();
		a.showA();
		B b=new B();
		b.showA();
				

	}

}

 

  运行结果:

技术分享

第二题:

实现一个名为Person的类和它的子类EmployeeEmployee有两个子类Faculty

Staff

具体要求如下:

1Person类中的属性有:姓名nameString类型),地址addressString类型),

电话号码telphoneString类型)和电子邮件地址emailString类型)

2Employee类中的属性有:办公室officeString类型),工资wagedouble

类型),受雇日期hiredateString类型)

3Faculty类中的属性有:学位degreeString类型),级别levelString类型)

4Staff类中的属性有:职务称号dutyString类型)

package workhome;

public class Person {

	//属性
	private String name;
	private String address;
	private String telphone;
	private String email;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public String getTelphone() {
		return telphone;
	}
	public void setTelphone(String telphone) {
		this.telphone = telphone;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	
	//方法
	public void p1()
	{
		System.out.println("姓名:"+name+", "+"住址:"+address+", "+"电话:"+telphone+", "+"email:"+email);
	}
	
}

package workhome;

public class Employee extends Person {
	
	//属性
	private String office;
	private double wage;
	private String hiredate;
	public String getOffice() {
		return office;
	}
	public void setOffice(String office) {
		this.office = office;
	}
	public double getWage() {
		return wage;
	}
	public void setWage(double wage) {
		this.wage = wage;
	}
	public String getHiredate() {
		return hiredate;
	}
	public void setHiredate(String hiredate) {
		this.hiredate = hiredate;
	}
	
	//方法
	public void e()
	{
		super.p1();System.out.println("办公室:"+office+", "+"工资:"+wage+", "+"受雇日期:"+hiredate);
	}

}

package workhome;

public class Faculty extends Employee {
	private String degree;//学位
	private String level;//级别
	public String getDegree() {
		return degree;
	}
	public void setDegree(String degree) {
		this.degree = degree;
	}
	public String getLevel() {
		return level;
	}
	public void setLevel(String level) {
		this.level = level;
	}
	//方法
	public void F()
	{
	super.e();	System.out.println("学位:"+degree+", "+"级别:"+level);
	System.out.println();
	}
}

package workhome;

public class Staff extends Employee {
	private String duty;//职务

	public String getDuty() {
		return duty;
	}

	public void setDuty(String duty) {
		this.duty = duty;
	}

	public void S()
	{
	super.e(); System.out.println("职务:"+duty);
	System.out.println();
	}
}

  

package workhome;

public class testperson0920 {

public static void main(String[] args) {
// TODO Auto-generated method stub
//实例化person类
Person p=new Person();
p.setName("张三");
p.setAddress("淄博张店");
p.setEmail("123456@qq.com");
p.setTelphone("3787110");
p.p1();
//实例化Employee类
Employee E=new Employee();
E.setOffice("汉企401");
E.setHiredate("2016-08-16");
E.setWage(1000);
E.setName("张三");
E.setAddress("淄博张店");
E.setEmail("123456@qq.com");
E.setTelphone("3787110");
E.e();
//实例化Faculty类
Faculty F=new Faculty();
F.setOffice("汉企401");
F.setHiredate("2016-08-16");
F.setWage(1000);
F.setName("张三");
F.setAddress("淄博张店");
F.setEmail("123456@qq.com");
F.setTelphone("3787110");
F.setDegree("博士");
F.setLevel("教育学学士");
F.F();
//实例化Staff类
Staff S=new Staff();
S.setOffice("汉企401");
S.setHiredate("2016-08-16");
S.setWage(1000);
S.setName("张三");
S.setAddress("淄博张店");
S.setEmail("123456@qq.com");
S.setTelphone("3787110");
S.setDuty("教师");
S.S();

}

}


 

 运行结果:

技术分享

第三题:

编写一个Car类,具有String类型的属性品牌,具有功能drive

定义其子类AodiBenchi,具有属性:价格、型号;具有功能:变速;

定义主类E,在其main方法中分别创建AodiBenchi的对象并测试对象的特

性。

package workhome;

public class Car {

	//属性
	private String look;
	private String lunzi;
	public String getLook() {
		return look;
	}
	public void setLook(String look) {
		this.look = look;
	}
	public String getLunzi() {
		return lunzi;
	}
	public void setLunzi(String lunzi) {
		this.lunzi = lunzi;
	}
	//方法
	public void drive()
	{
		System.out.println();
	}
	
}


package workhome;

public class Aodi extends Car {
	//属性
	private String xh;
	private double jg;
	private double sped=100.0;
	public String getXh() {
		return xh;
	}
	public void setXh(String xh) {
		this.xh = xh;
	}
	public double getJg() {
		return jg;
	}
	public void setJg(double jg) {
		this.jg = jg;
	}

	//方法
	public double speed(double i)
	{
		sped+=i;
		return sped;
	}
}


package workhome;

public class Benchi extends Car {
	//属性
		private String xh;
		private double jg;
		private double sped=100;
		public String getXh() {
			return xh;
		}
		public void setXh(String xh) {
			this.xh = xh;
		}
		public double getJg() {
			return jg;
		}
		public void setJg(double jg) {
			this.jg = jg;
		}
		//方法
		public double speed(double i)
		{
			sped+=i;
			return sped;
		}
}

package workhome;

public class E

{

public static void main(String[] args)

{
// TODO Auto-generated method stub
//car
Car c=new Car();
c.setLook("正方形");
c.setLunzi("四轮");
//Aodi
Aodi a=new Aodi();
a.setXh("奥迪A8");
a.setJg(10000000);
System.out.println(a.speed(30.0));
//Benchi
Benchi b=new Benchi();
b.setXh("奔驰s07");
b.setJg(9999999);
System.out.println(b.speed(-20.131));
}

}

  运行结果:

技术分享

第四题:

按要求编写一个Java应用程序:

1)编写一个矩形类Rect,包含:

两个属性:矩形的宽width;矩形的高height

两个构造方法:

1.一个带有两个参数的构造方法,用于将widthheight属性初化;

2.一个不带参数的构造方法,将矩形初始化为宽和高都为10

两个方法:

求矩形面积的方法area()

求矩形周长的方法perimeter()

2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用

矩形的左上角坐标来标识,包含:

添加两个属性:矩形左上角坐标startXstartY

两个构造方法:

4个参数的构造方法,用于对startXstartYwidthheight属性

初始化;

不带参数的构造方法,将矩形初始化为左上角坐标、长和宽都为0

的矩形;

添加一个方法:

判断某个点是否在矩形内部的方法isInside(double x,double y)。如在矩

形内,返回true, 否则,返回false

  提示:点在矩形类是指满足条件:

x>=startX&&x<=(startX+width)&&y<startY&&y>=(startY-height)

3)编写PlainRect类的测试程序

创建一个左上角坐标为(1010),长为20,宽为10的矩形对象;

计算并打印输出矩形的面积和周长;

判断点(25.513)是否在矩形内,并打印输出相关信息。

 

package workhome;

public class Rect {
	//属性
	public double width;
	public double height;

	//构造方法1
	Rect(double width,double height)
	{
		this.width=width;
		this.height=height;
	}
	//构造方法2
	Rect()
	{
		width=10;
		height=10;
	}
	//方法1
	public double area()
	{
		double mj=width*height;
		return mj;
	}
	//方法2
		public double perimeter()
		{
			double zc=2*(width+height);
			return zc;
		}

}


package workhome;

public class PlainRect extends Rect {
	private double startX;//矩形左上角坐标
	private double startY;

	
	public double getStartX() {
		return startX;
	}
	public void setStartX(double startX) {
		this.startX = startX;
	}
	public double getStartY() {
		return startY;
	}
	public void setStartY(double startY) {
		this.startY = startY;
	}

	//构造方法1
	PlainRect(double startX,double startY,double width,double height)
	{
		super(width,height);
		this.startX=startX;
		this.startY=startY;
		
	}
	//构造方法2
	PlainRect()
	{
		super();
		startX=0;
		startY=0;
		
	}
	//方法
	public boolean isInside(double x,double y)
	{
		if(x>=startX&&x<=(startX+width)&&y<startY&&y>=(startY-height))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
}


package workhome;

public class PlainRecttest {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//实例化Rect类
		Rect cs1=new Rect();
		//实例化PlainRect类
		PlainRect cs2=new PlainRect(1,2,20,10);
		System.out.println(cs2.area());
		System.out.println(cs2.perimeter());
		System.out.println(cs2.isInside(25.5,13));
	}

}

 

  运行结果:

技术分享

 

 

 

 

 

继承0920作业

标签:

原文地址:http://www.cnblogs.com/zhangnaitao/p/5891031.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!