新建一个鲜花类Flower,其中有一个私有成员属性name,字符串类型,方法有构造方法,setName(String name)和String getName()。在测试类中输入具体鲜花构建实

本文通过三个实战案例,介绍了Java中类的定义与使用、接口的实现与应用,以及类的继承等核心概念。案例一展示了如何创建一个Flower类,设置私有属性并提供公共方法进行操作;案例二通过实现GongZi接口,演示了总经理类和业务员类的工资与奖金计算方法;案例三则通过Bird基类和其派生类Penguin、Owl、Ostrich的定义,展现了类继承和重写toString方法的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目描述
新建一个鲜花类Flower,其中有一个私有成员属性name,字符串类型,方法有构造方法,setName(String name)和String getName()。在测试类中输入具体鲜花的名字,构建实例,打印输出“I am …”。

输入描述
输入鲜花的名字(见样例)

输出描述
输出 I am 鲜花的名字(见样例)
说明:符号为英文符号

输入样例
rose

输出样例
I am rose.
代码如下:

package aaa;

import java.util.Scanner;

public class Test {
	
	private static String name;
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		name=scanner.nextLine();
		Flower flower = new Flower();
		System.out.println("I am "+name );
	}

}
class Flower {
	private String name;

	
	public Flower() {
		
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	

}

类接口的实现
题目描述
新建一个名为GongZi的接口,包括求基本工资(Award())、绩效奖金(Jiang())和显示输出 (show()) 的方法。定义总经理类( 属性:级别x和业绩y )和业务员类(属性: 级别m和工作时间n ),实现该接口,计算工资 g 和奖金 j 的求解,总经理的工资 g =65y+16x,奖金 j=x*(y-60);业务员的工资g = 40n+12m,津贴 j = m*(n-90)。在测试类中分别输入总经理的级别x和业绩y;业务员的工作时间n和级别m,输出结果

输入描述
总经理的级别x和业绩y ,业务员的级别m和工作时间n

输出描述
总经理的工资与奖金 ,业务员的工资与奖金

输入样例
8.2 196 9.5 185

输出样例
总经理的工资为12871.20,奖金为1115.20
业务员的工资为7514.00,奖金为902.50

代码如下:

package aaa;

public interface GongZi {
	abstract double  Award(double x,double y);
	abstract double  Jiang(double x,double y);
	abstract void show();

}
package aaa;

public class Zongjinli implements GongZi{
	double g,j;
	
	
	@Override
	public double  Award(double x,double y) {
		return g =65*y+16*x;
	}

	
	@Override
	public double Jiang(double x,double y) {
		return j=x*(y-60);
	}

	
	@Override
	public void show() {
		
		String aString="总经理的工资为"+String.format("%.2f", this.g)+","+"奖金为"+String.format("%.2f", this.j);
		System.out.println(aString.toString());
		
	}
	
	

}

package aaa;

public class Yewuyuan implements GongZi{
	double g,j;

	@Override
	public double Award(double m,double n) {
		return g = 40*n+12*m;
		
		
	}

	
	@Override
	public double Jiang(double m,double n) {
		return j = m*(n-90);
		
	}

	
	@Override
	public void show() {
		String aString="业务员的工资为"+String.format("%.2f", this.g)+","+"奖金为"+String.format("%.2f", this.j);
		System.out.println(aString.toString());
		
	}

}


package aaa;
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		float x=scanner.nextFloat();
		float y=scanner.nextFloat();
		float m=scanner.nextFloat();
		float n=scanner.nextFloat();
		GongZi zongjinli=new Zongjinli();
		GongZi yewuyuan=new Yewuyuan();
		zongjinli.Award(x, y);
		zongjinli.Jiang(x, y);
		yewuyuan.Award(m, n);
		yewuyuan.Jiang(m, n);
		zongjinli.show();
		yewuyuan.show();
	}

}

类的继承4
题目描述
新建一个鸟类 Bird 的基类,私有属性为名字name和喜欢的运动方式move。构造三个派生类,一个是Penguin,一个是Owl,一个是Ostrich。在测试类中输入三个参数,第一个参数为整型数(1、4、7),表示鸟的类别,分别代表Penguin、Owl、Ostrich。根据该参数构造对应的类对象。第二个参数为鸟的名字,第三个参数为鸟喜欢的运动方式。重写toString方法,功能是打印输出“I am …”, “I like to …”

输入描述
输入整型数和鸟的名字、喜欢的运动方式(见样例)

输出描述
输出 I am 鸟的名字 类型, I like to 运动方式(见样例)
说明:所有标点为英文,单词间有空格,注意大小写。

输入样例
1 Antarctic swim

输出样例
I am Antarctic Penguin, I like to swim.

代码如下:

package com.day425;

class Bird {
	//私有字段
	private String name;
	private String move;
	
	//set、get方法
	public String getName() {
		return name;
	}
	
	public String getMove() {
		return move;
	}
	
	//构造函数
	public Bird(String name, String move) {
		super();
		this.name = name;
		this.move = move;
	}
	//toString()方法
	@Override
	public String toString() {
		return "Bird [name=" + name + ", move=" + move + "]";
	}
	
	

}

package com.day425;

class Penguin extends Bird{
	private int number;
	public Penguin(String name, String move,int a) {
		super(name, move);
		this.number=a;
	}

	@Override
	public String toString() {
		
		return "I am " + super.getName() + " Penguin, I like to " + super.getMove() +  ".";
	}
	
	
	
}

package com.day425;

class Owl extends Bird{
	private int number;

	public Owl(String name, String move,int a) {
		super(name, move);
		this.number=a;
	}

	@Override
	public String toString() {
		return "I am " + getName() + " Owl, I like to " + getMove() +  ".";
	}

	
	
	

}

package com.day425;

class Ostrich extends Bird{
	private int number;

	public Ostrich(String name, String move,int a) {
		super(name, move);
		this.number=a;
	}

	@Override
	public String toString() {
		return "I am " + getName() + " Ostrich, I like to " + getMove() +  ".";
	}

		
}

package com.day425;
import java.util.Scanner;
public class Test {
	
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		
		int a=scanner.nextInt();
		String name=scanner.next();
		String yundong=scanner.next();
		
		Bird bird = new Bird(name, yundong);
		Bird penguin = new Penguin(name, yundong, a);
		Bird owl = new Owl(name, yundong,a);
		Bird ostrich = new Ostrich(name, yundong,a);
		
		if (a==1) {
			System.out.println(penguin.toString());
		}else if(a==4) {
			System.out.println(owl.toString());
		}  else if (a==7) {
			System.out.println(ostrich.toString());
		}
			//System.out.println(penguin.toString());
			
			//System.out.println(owl.toString());
			
			//System.out.println(ostrich.toString());


		}
		
	}







今天考试的所有题和代码都在这里了,哎,当时急急忙忙给人家只做了两道,第三道也没做完。很内疚,以后还是好好学习基础

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值