修改版美女选妃案例

java培训第三天打卡

在这里插入图片描述
今天先围绕权限修饰符展开

  1. private 私有
  2. Default (默认的) 只有包内的类才能被访问,所以有"包访问权限"的称呼 -->方法
  3. protected 不但包内的类可以访问,所以继承的子类也可以访问
  4. public 公有,都可以访问 例:public int leg;
    他们都能修饰class

继承: public class Cat extends An{}
cat为子类 an为父类

抽象类: abstract 例:public abstract class An{}
可以有普通方法也可以有抽象方法

接口: interface implments
只可以有抽象方法

下面以Usb为例,来看看什么是接口
package zhongruan.service;

public interface Usb {
void getconnection();
void closeconnection();
}

接口可以直接引用到Computer
package zhongruan.service;

public class Computer implements Usb{
@Override
public void getconnection() {
System.out.println(“获得电脑的连接”);
}
@Override
public void closeconnection() {
System.out.println(“关闭电脑的连接”);
}
}

再来看看抽象类和继承,以people为例
package zhongruan.service;

public abstract class People {
abstract void say();
}

下面以china继承以上people属性
package zhongruan.service;

public class China extends People{
@Override
void say() {
System.out.println(“hello”);
}
}

好,前引完了,今天我们继续完善美女选妃案例,如和使用好接口使代码变得简洁明了呢
先建一个Lady类
package zhongruan.service;

public class Lady {
private int hight;
private int wight;
public int getHight() {
return hight;
}
public void setHight(int hight) {
this.hight = hight;
}
public int getWight() {
return wight;
}
public void setWight(int wight) {
this.wight = wight;
}
@Override
public String toString() {
return “Lady{” +
“hight=” + hight +
“, wight=” + wight +
‘}’;
}
}
这就是一个接口,以上的内容可以直接应用到bautifulladies
来看看修改以后的代码:
package zhongruan.service;

import java.util.*;

public class BautifulLadies {
//选10个美女 public private…(权限修饰符)
void getLadies() {
List ladies = new ArrayList<>();
Scanner input=new Scanner(System.in);
for(int i=0;i<4;i++){
Lady lady=new Lady();
System.out.println(“请输入第”+i+“个美女的身高”);
int h=input.nextInt();
lady.setHight(h);
System.out.println(“请输入第”+i+“个美女的体重”);
int w=input.nextInt();
lady.setWight(w);
ladies.add(lady);
}
System.out.println(ladies);
Map<String, Integer> hightWightAvg = getHightWightAvg(ladies);
System.out.println(hightWightAvg);
boolean result = getResult(hightWightAvg);
if (result) {
System.out.println(“是美女”);
} else {
System.out.println(“不是美女”);
}
}
//计算10个美女的平均身高和体重
Map<String, Integer> getHightWightAvg(Listladies) {
int sumH = 0;
int sumW = 0;
for (Lady lady: ladies) {
sumH = sumH +lady.getHight();
sumW = sumW +lady.getWight();
}
System.out.println(“sumH:” + sumH);
System.out.println(“sumW:” + sumW);
int avgH = sumH / 3;
int avgW = sumW / 3;
Map<String, Integer> map = new HashMap<>();
map.put(“avgH”, avgH);
map.put(“avgW”, avgW);
return map;
}
//判断平均身高》170 体重《60
boolean getResult(Map<String,Integer> map) {
int avgH = map.get(“avgH”);
int avgW = map.get(“avgW”);
if (avgH > 150 && avgW < 60) {
return true;
} else {
return false;
}
}
public static void main(String[] args) {
BautifulLadies BautifulLadies = new BautifulLadies();
BautifulLadies.getLadies();
}
}
这里关于美女的数据后来手动输入的,也就是她能够实现更高级一点的交互了,在上一个版本中,信息是手动add进去的,得到的是最后的结果。

今天over

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值