JAVA 编写一个员工类,成员变量和成员方法自拟,编写一个测试类

课后习题练习
3.4 编写程序实现以下功能:
(1).员工类(Emploee):c=成员变量包含员工号和员工姓名,成员方法包含构造方法和输出方法(输出员工信息)。
(2). 部门主管类(Manager):从员工类继承而来,同时添加新的成员变量:主管部门名;添加构造方法,要调用父类Emploee的构造方法,覆盖父类中的输出方法,输出部门主管对象的信息。
(3). 测试类(Test):包含一个主方法。在主方法中创建一个员工对象和一个部门主管类的对象,并调用输出方法显示员工信息和部门主管信息。

3.5 定义一个极了Area,其中包含一个计算面积的方法CalsulateArea(),然后设计MyCircle和MyRectangle
两个类都实现这个接口中的方法CalsulateArea(),分别计算圆和矩形的面积,最后写出测试以上类和方法的程序。

3.6 编写程序完成以下功能:
(1) 写出一个类people,其中people类具有name\age两个保护成员变量,分别为String类型、整型,且具有公有的getAge成员函数,用于返回age变量的值。
(2) 以People类做基类派生出子类Employee和Teacher,Employee类具有保护成员变量empno,类型为String,Teacher具有私有成员变量teano,类型为String。
(3) 定义接口Promaotion,其中包含成员函数hardwork。
(4) 定义Manager类,该类从Employee派生并实现Promotion接口,包含私有成员Allowence,类型为float。
( 5) 所有类都具有构造函数。

3.4

public class Test {

	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		Emploee e = new Emploee();
		Manager m = new Manager();
		System.out.println("请输入员工的信息:");
		e.setName(s.nextInt(),s.next());
		System.out.println("请输入主管的信息:");
		m.setName(s.nextInt(),s.next(),s.next());
		e.print();
		m.print();
	}
}
class Emploee{
	String name;
	int n;
	void setName(int n,String name){
		this.n = n;
		this.name = name;
	}
	void print() {
		System.out.println("员工号为:" + n +"\n员工姓名为:" + name);
	}
}
class Manager extends Emploee{
	String name,position;
	int n;
	void setName(int n,String name,String position) {
		this.n = n;
		this.name = name;
		this.position = position;
	}
	void print() {
		System.out.println("主管号为:" + n + "\n主管姓名为:" + name + "\n主管部门为:" + position);
	}
}
 

3.5

public class TestArea {

	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		MyCircle c = new MyCircle();
		MyRectangle r = new MyRectangle();
		System.out.println("请输入圆的半径:");
		c.calsulateArea(s.nextInt());
		c.print();
		System.out.println("请输入矩形的长和宽:");
		r.calsulateArea(s.nextInt(), s.nextInt());
		r.print();
	}
}
class MyCircle implements Area{
	int r;
	double s;
	void calsulateArea(int r) {
		this.r = r;
		s = r * r *3.141592653;
	}
	void print() {
		System.out.println("半径为" + r + "的圆的面积为:" + s);
	}
	
}
class MyRectangle implements Area{
	int a,b,s;
	void calsulateArea(int a,int b) {
		this.a = a;
		this.b = b;
		s = a * b;
	}
	void print() {
		System.out.println("矩形的面积为:" + s);
	}
}

接口

public interface Area {

	default void CalsulateArea() {
		
	}
}
//没错!空的就行!当然写点东西也可以嘛

3.6就是熟悉一下各种东西,没啥意思不敲啦!
打字好慢啊,TAT多练习多练习

以下是老师留的第二次作业
1.设计Point类用来定义平面上的一个点坐标,包含修改和读取方法、显示信息的方法。编写测试类PointTest,在该类中定义Point类的对象,并调用方法。
2.编写一个学生类,成员变量和成员方法自拟,编写一个测试类。
3.编写一个矩形类,包含成员变量:长和宽,成员方法:计算面积和计算周长;编写测试类,并创建对象显示结果。
4.在code.a包中编写一个公有类A,包含私有成员x,缺省成员y,公有成员z;在code.b包中编写测试类Test,在main方法中创建A的对象,并访问x,y,z,以验证访问权限的作用。(成员数据类型自拟)
第三次作业:
1.编写复数类,为该类定义构造函数和信息输出方法,在测试类中完成2个复数对象的构建(从键盘录入)和输出。
2.编写一个Dog类,成员变量自拟,要求能统计对象的创建个数,并编写测试类进行测试。
(这里统计对象的创建个数原来是用static!))
3.编写一个整数数组(长度为5),从键盘上依次输入所有的元素,对数组进行排序,然后用foreach输出所有的元素。
4.定义一个double型数组d1,并进行初始化(长度为5-10之间),编写代码实现d1的克隆,并将其赋值给数组d2,要求d2中的元素与d1完全相同,且具有自己的内存空间
(有自己的内存空间就是要new!)
第四次作业:
1.编写复数类,为该类定义构造函数和信息输出方法(这是第三次作业),在测试类中建立复数的数组(至少三个元素,赋值方式自拟),对输入的复数按照模的大小进行排序,并按照从大到小的顺序输出各个复数的值。
2.编程一个类Compare,定义一个静态方法,用来比较两个String对象的大小,若字符串1和字符串2相等,返回0;若字符串1和字符串2不相等,则返回第一个不同字符的差值;若字符串1和字符串2仅长度不同,则返回两者长度的差值。定义测试类调用该方法。
3.编程电脑类,然后派生台式机和笔记本两个子类,成员变量和成员方法自己定义。编程测试类分别创建3个类的对象,并调用所有的方法。
以上几次作业由于当时没有上课所以不知道具体是上到哪里布置的,就统一放一起啦!

  • 2
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值