一、【实验内容】
1、编写程序,程序包含如下内容
【创建包:employee,完成如下功能】
1. 创建一个员工类(Employee),其中包括:
1) 4个私有属性:员工姓名(name)、员工年龄(age)、员工职位(position)、工资(salary)
2) 方法:
Employee() ——给所有的属性指定初始值
setName()——给name属性赋值
setAge()——给age属性赋值,要求年龄必须在18岁以上,当年龄无效时,将年龄强制赋值为18
setPosition()——给position属性赋值,只能是“售后服务”和“销售员”,如果不符合要求,则强制将职位赋值为“售后服务”。
setSalary()——用于员工的工资:根据员工的年龄段不同,给工资属性赋值,具体要求:18~20岁之间,1000元,21~25岁之间,1500元,26~30岁之间,2000元,31~40岁之间,3000元,41~50岁之间,3500元,50岁以上,4000元
getName()——返回name属性
getAge()——返回age属性
getPosition()——返回position属性
getSalary()——返回salary属性
2. 测试类TestEmployee,在该类中创建3个Employee对象,通过键盘输入给3个员工的名字、年龄、职位进行赋值,计算出每个员工的工资,显示出所有员工的信息
第1题
- 程序源代码(格式调整好,程序5号字体)
Employee类
package employees;
public class Employees {
//员工私有属性
private String name;//员工姓名
private int age;//员工年龄
private String position;//员工职位
private int salary;//员工工资
//给所有属性给定初始值
public Employees(String name,int age,String position,int salary) {
this.name=name;
this.age=age;
this.position=position;
this.salary=salary;
}
//给name属性赋值(员工名字)
public void setName(String name) {
this.name=name;
}
public String getName(){
return name;
}
//给age属性赋值(员工年龄)
public void setAge(int age) {
if(age<18) {
this.age=18;
System.out.println("当年龄无效时,默认为18");
}
else {
this.age=age;
}
}
public int getAge() {
return age;
}
//给position属性赋值(员工职位)
public void setPosition(String position) {
if(position.contentEquals("售后服务")||position.contentEquals("销售员")) {
this.position=position;
}else {
this.position="售后服务";
System.out.println("职位输入不符合要求,默认为售后服务");
}
}
public String getPosition(){
return position;
}
//给salsry属性赋值(员工工资)
public void setSalary(){
if(age>=18&&age<=20) {
this.salary=1000; //18-20员工工资1000
}else if(age>=21&&age<=25) {
this.salary=1500; //21-25员工工资1500
}else if(age>=26&&age<=30) {
this.salary=2000; //26-30员工工资2000
}else if(age>=31&&age<=40) {
this.salary=3000; //31-40员工工资3000
}else if(age>=41&&age<=50) {
this.salary=3500; //41-50员工工资3500
}else if(age>=51) { //51岁以上员工工资4000
this.salary=4000;
}else {
System.out.println("没有设置年龄或者年龄无效");
}
}
public int getSalary() {
return salary;
}
}
测试类TestEmployee
package employees;
import java.util.Scanner;
public class TestEmployee {
public static void main(String[] args) {
// TODO Auto-generated method stub
Employees emp1=new Employees(null,0,null,0);
Scanner sc=new Scanner(System.in);
System.out.println("请输入第一个员工的姓名");
String name1=sc.next();
emp1.setName(name1);
System.out.println("请输入第一个员工年龄");
int age1=sc.nextInt();
emp1.setAge(age1);
System.out.println("请输入第一个员工的职位");
String position1=sc.next();
emp1.setPosition(position1);
emp1.setSalary();
System.out.println("--------------------");
System.out.println("员工1姓名为:"+emp1.getName());
System.out.println("年龄为:"+emp1.getAge());
System.out.println("工作为:"+emp1.getPosition());
System.out.println("工资为:"+emp1.getSalary());
//21级智科01
}
}
2、按以下要求编写程序
(1)编写Animal接口,接口中声明run()方法
(2)定义Bird类和Fish类实现Animal接口
(3)编写Bird类和Fish类的测试程序,并调用其中的run()方法
第二题
1.程序源代码(格式调整好,程序5号字体)
interface Animal {//声明接口Animal
abstract void run();//定义抽象方法
}
class Bird implements Animal {// 实现接口
public void run() {
System.out.println("测试run方法成功");
}
}
class Fish implements Animal {// 实现接口
public void run() {
System.out.println("测试run方法成功");
}
}
public class Animaljiekou {
public static void main(String[] args) {
Animal p1;//声明接口变量
p1 = new Bird();//实现类对象赋值接口变量
p1.run();//接口回调
p1 = new Fish();//实现类对象赋值接口变量(21级智科01)
p1.run();//接口回调
}
}
3、密码问题,网上流传一句话:常在网上飘啊,哪能不挨刀啊。其实要想能安安心心地上网其实也不难,学点安全知识就可以。 首先,我们就要设置一个安全的密码。那什么样的密码才叫安全的呢?一般来说一个比较安全的密码至少应该满足下面两个条件:
(1).密码长度大于等于8,且不要超过16。
(2).密码中的字符应该来自下面“字符类别”中四组中的至少三组。这四个字符类别分别:
1.大写字母:A,B,C...Z;
2.小写字母:a,b,c...z;
3.数字:0,1,2...9;
4.特殊符号:~,!,@,#,$,%,^;
给你一个密码,你的任务就是判断它是不是一个安全的密码。 Input 输入数据第一行包含一个数M,接下有M行,每行一个密码(长度最大可能为50),密码仅包括上面的四类字符。
Output 对于每个测试实例,判断这个密码是不是一个安全的密码,是的话输出YES,否则输出NO。
第三题
1.程序源代码(格式调整好,程序5号字体)
import java.util.Scanner;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入密码 ");//提示语句 请输入密码
Scanner scan=new Scanner(System.in);//获取用户滴密码
int m=scan.nextInt();//用户密码赋值到m中
scan.nextLine();
while(m--!=0){//while循环
String s=scan.nextLine();
int count=0;
if(s.length()>=8&&s.length()<=16) {
if (Pattern.compile("[A-Z]").matcher(s).find())//进行密码比对
count++;
if (Pattern.compile("[a-z]").matcher(s).find())
count++;
if (Pattern.compile("[0-9]").matcher(s).find())
count++;
if (Pattern.compile("[~!@#$%^]").matcher(s).find())
count++;
}
if(count<=3) { //判读count是否执行了3次 21级智科 42104521
System.out.println("YES");//输出YES
}
else {
System.out.println("NO");//输出NO
}
}
}
}
感谢内生原动力(自己)
听从自己内心的声音,做自己想做的人!!!