龙空技术网

java 核心技术-12版 卷Ⅰ- 4.1.3 识别类

CC挑灯夜读1谷 170

前言:

而今姐妹们对“java识别系统”大概比较关怀,各位老铁们都需要了解一些“java识别系统”的相关内容。那么小编同时在网络上网罗了一些对于“java识别系统””的相关内容,希望大家能喜欢,各位老铁们快快来学习一下吧!

原文

传统的过程式程序中,必须从最上面的main 函数开始编写程序。设计一个面向对象系统时,则没有所谓的“最上面”。因此,学习OOP的初学者常常会感到无从下手。答案是:首先从识别类开始,然后再为各个类添加方法。

识别类的一个简单经验是在分析问题的过程中寻找名词,而方法对应动词。

例如,在订单处理系统中,有这样一些名词:

商品(Item)订单(Order)发货地址(Shipping address)付款(Payment)账户(Account)从这些名词就可以得到类 Item、 Order 等。

接下来查找动词。商品要添加(add)到订单中,订单可以发货(ship)或取消(cancel),另外可以对订单完成付款(apply)。对于每一个动词,当“添加”“取消”或者“完成付款”,要识别出负责完成相应动作的对象。例如,当一个新商品添加到订单中时,订单对象就是负责的对象,因为它知道如何存储商品以及如何对商品进行排序。也就是说,add应该是Order 类的一个方法,它接受一个Item 对象作为参数。

当然,这种“名词”与“动词”原则只是一种经验,在创建类的时候,只有经验能帮助你确定哪些名词和动词重要。

个人补充

参考设计class

package corejava.chapter4.lession1;import java.util.Scanner;public class Chicken {    String name;    String skill;    void setName(String n) {        name = n;    }    void study(String s) {        skill = s;    }    void showSkill() {        System.out.println(skill);    }    public static void main(String[] args) {        Chicken c1 = new Chicken();        c1.setName("小花");        c1.study("唱歌");        Chicken c2 = new Chicken();        c2.setName("小白");        c2.study("跳舞");        Chicken c3 = new Chicken();        c3.setName("刘总");        c3.study("书法");        Chicken c4 = new Chicken();        c4.setName("肥肥");        c4.study("下蛋公鸡,公鸡中的战斗机,哦也");        Chicken[] cs = {c1, c2, c3, c4};        Scanner sc = new Scanner(System.in);        int x = -1;        while (x != 0) {            System.out.println("请选择要对话的chicken 1,2,3,4,退出请按0");            x = sc.nextInt();            if (x < 1 || x > 4) {                System.out.println("选择错误,不存在的chicken");            }else{                int index = x - 1;                Chicken cx = cs[index];                System.out.println("my name is " + cx.name);                cx.showSkill();            }        }        System.out.println("bye bye");    }}

练习题

下面两个题目

1是基本题目,应该没有难度,如果设计不出来,需要加强基础学习和练习了。

2是选做题目,做不出来也正常,没有关系,属于需要变通的题目,如果能做出来,说明之前的学习效果很好。

题目1 , 简单:

设计一个Cat 类,

猫分公母,有不同颜色,不同体重。

猫有不同的爱吃的东西,比如:老鼠,鱼,猫罐头,裤子腿等

所有的猫都会喵喵叫。

参考上述的范例,设计此Cat类,main函数中,生成4个Cat实例,使用交互程序选择不同的Cat ,查看Cat的属性,并让它吃点东西,叫一声。

题目2,加点难度:

设计一辆车

品牌比如用 Byd

车牌照当然是每辆车各自的

油箱容量设置为25

百公里油耗按照6.5来算

车子可以上牌照

注意:没有上牌照,不能开车,不能加油。必须先上牌照

车子有行驶和加油功能

加油的话,如果不满25,就按指定的数字加油

如果超过25就加到25,剩下的退掉

行驶的话,按里程减少油

如果一次行驶的里程导致油耗尽

就退出程序,打印油已耗尽,再见。(这里注意,退出系统不再是选择界面, 而是行驶后检查油量,油耗完的时候退出)

标签: #java识别系统