abstraction

    -1热度

    1回答

    当我觉得有在我的项目一个工厂类的需要,我很想用这个办法: public class ProductFactory { public Product makeProduct(Type t){ switch (t) { case A: return new ProductA(); break; case B: return new ProductB

    1热度

    1回答

    我遇到了this site这句话在Eclipse代码度量的讨论,特别是讨论的“缺乏凝聚力”的理念: 凝聚力是面向对象编程的一个重要概念。它表明一个类是代表单个抽象还是多个抽象。这个想法是,如果一个类表示多个抽象,那么它应该被重构为多个类,每个类表示一个抽象。 在这种情况下什么是“单一抽象”? 从Difference between Encapsulation and Abstraction,我得到

    1热度

    1回答

    我想创建一个新的数据类型形状像一个旧的,但(不像使用type_synonym)它应该被认为是不同的其他理论。 我的激励示例:我从列表中制作堆栈数据类型。我不希望我的其他理论看我stack S作为list这么我可以强制对我自己的简化规则,但我已经找到了唯一的解决办法是: datatype 'a stk = S "'a list" ... primrec index_of' :: "'a li

    0热度

    1回答

    我发现自己重新发明一个特定的轮方式太频繁;我想知道是否有任何标准可以利用。具体而言,我发现自己创建的东西类似于: class Name(dict): family, first, middle, prefixes, suffixes, titles, etc. class Person(object): name, dob, address, etc... class

    -2热度

    1回答

    嗨,我知道你可以很容易地找到这里的错误,我需要帮助解决这个问题 我很累找到我的代码有什么问题,米试图修复它,但它变得复杂时,我尝试改变一些东西 这里是我目前的代码: package copro; public class QuizInherit { public static void main(String[] args){ students persons[] =

    0热度

    1回答

    我试图创建一个列表,其中包含类似矩阵列表的列的所有值。一个 (define-struct guess (symbol number)) puzzle1的 列表应只包含数字和猜测数: (list (list 'a 'b 'b 'c) (list 'a 2 1 4) (list 'f 3 'g 'g) (list 'f 'h 'i 'i)) 的参数是矩阵

    0热度

    2回答

    我知道如何让一个函数删除所有重复项,但这不是我的问题。我想保留所有独特的/没有重复的东西。 这将是特别好,如果有人可以在他们的反应使用抽象/高阶函数 所以这里有几个例子; '(1 1 1 2 2 2 3 4 5) - >'(3 4 5) '(1 1 1 2 2 2) - >空 '(2 3 4) - >'(2 3 4)

    0热度

    2回答

    我已经创建了下面的接口的多个实施方式和混乱: public interface IReader { string Read(); } 一种实现这一点,是一个封装的逻辑读入基于存储在所述的路径上从磁盘XML文件的XmlFileReader配置文件。 它的另一个实现是FileReader,它将根据指定的路径作为参数从磁盘读取文件。 现在令人困惑的是,XMLFileReader在Rea

    0热度

    1回答

    在这段代码中,最好是使用抽象类代替接口,还是现在它好?如果是这样,为什么? /** contract for all flyable vehicles **/ interface iFlyable { public function fly(); } /* concrete implementations of iFlyable interface */ class Jumbo

    0热度

    1回答

    在我的项目中,我必须做几个(意义很多)两个深循环过程次。我必须做同样的: for (var i = 0; i < length; i++) { something_here_maybe; for (var j = 0; j < second_length; j++) { something_else_here; } perhaps_other_t