- 技能题:
- 创建一个动物类,要求如下:
- 创建一个动物类(Animal)
- 属性有:姓名(name)年龄(age),全部为私有
- 方法有:叫,在叫的方法中输出name+叫,年龄为:+age
- 提供get、set方法
- 创建测试类,在测试类中创建2只动物,给这2只动物的信息赋值,并调用叫方法。
package com.zoukao;
/**
* 动物类
* */
//1)创建一个动物类(Animal)
public class Animal {
//2)属性有:姓名(name)年龄(age),全部为私有
private String name;
private int age;
//4)提供get、set方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//3)方法有:叫,在叫的方法中输出name+叫,年龄为:+age
public void jiao(){
System.out.println(name+"叫,年龄为:"+age);
}
}
package com.zoukao;
/**
* 动物测试类
* */
public class TestAnimal {
//5)创建测试类
public static void main(String[] args) {
//创建对象在测试类中创建2只动物
Animal an1=new Animal();
Animal an2=new Animal();
//给这2只动物的信息赋值
an1.setName("边牧");
an1.setAge(3);
an2.setName("贵宾犬");
an2.setAge(5);
//并调用叫方法
an1.jiao();;
an2.jiao();
}
}
- 张老太养了两只猫:一只叫小花,今年3岁白色。另一只叫小白,今年3岁花色。请编写一个程序,当用户输入小猫的名字时,就显示该猫的名字、年龄、颜色。如果输入的小猫名错误,则显示:张老太没有这只猫。
实现思路:
- 创建猫类,定义三个属性:姓名 年龄 颜色,属性均私有
- 给这3个变量提供set和get方法
- 定义打印信息的方法
- 创建测试类
- 创建2只猫,用set方式赋值,信息和题意一致
- 创建键盘录入对象,录入猫的姓名
- 判断键盘录入的姓名和这2只猫的姓名是否一致,如果一致就打印这只猫的信息,
如果不一致提示没有这只猫,请重新输入
package com.zoukao;
public class Cat {
//1)创建猫类,定义三个属性:姓名 年龄 颜色,属性均私有
private String name;
private int age;
private String color;
//2)给这3个变量提供set和get方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
//3)定义打印信息的方法
public void show(){
System.out.printf("姓名:%s,年龄:%d,颜色:%s\n",name,age,color);
}
}
package com.zoukao;
import java.util.Scanner;
public class TestCat {
//4)创建测试类
public static void main(String[] args) {
// 5)创建2只猫,用set方式赋值,信息和题意一致
Cat c1=new Cat();
Cat c2=new Cat();
c1.setName("小花");
c1.setAge(3);
c1.setColor("白色");
c2.setName("小白");
c2.setAge(3);
c2.setColor("花色");
// 6)创建键盘录入对象,录入猫的姓名
Scanner in=new Scanner(System.in);
System.out.println("请输入猫咪名字:");
String name=in.next();
// 7)判断键盘录入的姓名和这2只猫的姓名是否一致,如果一致就打印这只猫的信息,
// 如果不一致提示没有这只猫,请重新输入
if(name.equals(c1.getName())){
c1.show();
} else if (name.equals(c2.getName())) {
c2.show();
}else {
System.out.println("没有这只猫,请重新输入!");
}
}
}
- 创建一个汽车类
案例思路要求:
- 创建一个汽车类(Car)有油量和时速2个属性,属性均私有化。
- 写一个显示方法(show)在此方法中输出新车上路,输出当前时速和油量
- 写一个转弯方法,在这个方法中将时速固定到20,油量减1 ,调用show方法
- 写一个直行的方法,在这个方法中时速加10,油量减1,调用show方法
- 写一个停车方法,输出:停车
- 编写setter,getter为相应的变量赋值或者获取某个变量。
编写一个测试类,生成两个汽车类对象。分别为这两个对象油量和时速赋值。然后分别调用转弯,直行,停车方法。
package com.zoukao;
public class Car {
//1)创建一个汽车类(Car)有油量和时速2个属性,属性均私有化。
private int oil;//油量
private int speed;//时速
//2)写一个显示方法(show)在此方法中输出新车上路,输出当前时速和油量
public void show(){
System.out.println("新车上路,当前时速"+this.speed+",油量"+this.oil);
}
//3)写一个转弯方法,在这个方法中将时速固定到20,油量减1 ,调用show方法
public void zw(){
this.speed=20;
this.oil--;
this.show();
}
//4)写一个直行的方法,在这个方法中时速加10,油量减1,调用show方法
public void run(){
this.speed+=10;
this.oil--;
this.show();
}
//5)写一个停车方法,输出:停车
public void stop(){
System.out.println("停车!!");
}
//6)编写setter,getter为相应的变量赋值或者获取某个变量。
public int getOil() {
return oil;
}
public void setOil(int oil) {
this.oil = oil;
}
public int getSpeed() {
return speed;
}
public void setSpeed(int speed) {
this.speed = speed;
}
}
package com.zoukao;
public class TestCar {
public static void main(String[] args) {
// 编写一个测试类,生成两个汽车类对象。
Car car1=new Car();
Car car2=new Car();
//分别为这两个对象油量和时速赋值。然后分别调用转弯,直行,停车方法。
car1.setOil(100);
car1.setSpeed(30);
car2.setOil(150);
car2.setSpeed(50);
car1.zw();
car1.run();
car1.stop();
car2.zw();
car2.run();
car2.stop();
}
}
4: 编程实现将一个十进制数字转换为N进制。
推荐实现步骤:
- 创建一个类,包含一个要转换的进制和要转换的十进制数字俩个属性。
- 添加一个默认构造和带参构造
- 编写一个转换和输出的方法(完成转换和输出)
- 编写测试类进行测试。
package com.zoukao;
public class Zuanhuan {
//1)创建一个类,包含一个要转换的进制和要转换的十进制数字俩个属性。
private int num;//要转换的十进制数字
private int n;//要转换的N进制
public void change(){
//计算数组的大小
int sum=0;
int temp=this.num;
while(this.num!=0){
this.num/=this.n;
sum++;
}
int[] arr=new int[sum];
//进行取余,并将余数保存到数组中
for (int i=arr.length-1;i>=0;i--){
arr[i]=temp%n;
temp/=n;
}
//输出数组
for(int m:arr){
if(m>=10){
System.out.print((char)(m+55));
}
else{
System.out.print(m);
}
}
}
//2)添加一个默认构造和带参构造
public Zuanhuan() {
}
public Zuanhuan(int num, int n) {
this.num = num;
this.n = n;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public int getN() {
return n;
}
public void setN(int n) {
this.n = n;
}
//3)编写一个转换和输出的方法(完成转换和输出)
}
package com.zoukao;
import java.util.Scanner;
public class TestZh {
//4)编写测试类进行测试。
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
System.out.println("请输入一个十进制数字:");
int x=in.nextInt();
System.out.println("请输入要转换的进制:");
int y=in.nextInt();
//创建对象
Zuanhuan zh=new Zuanhuan(x,y);
zh.change();
}
}