class-design相关内容

良好做法是否会覆盖具有较高可见性的方法?

回答此问题: 您没有正确覆盖paintComponent().这是受保护的 方法,不公开.如果在此方法上添加@Override批注 那么编译器会抱怨. 但是@peeskillet明智地指出了这一点: 编译器不会抱怨public或protected paintComponent.您可以以较高的可见度覆盖,但不能 下一个. public高于protected,所以没有问题. 这当然 ..
发布时间:2020-05-23 18:39:26 Java开发

Python:为__init__扩展int和MRO

在Python中,我试图扩展内置的'int'类型.为此,我想将一些关键参数传递给构造函数,所以我要这样做: class C(int): def __init__(self, val, **kwargs): super(C, self).__init__(val) # Do something with kwargs here... 但是,调用 ..
发布时间:2020-05-23 18:39:19 Python

是否应该始终禁止保护属性?

我很少使用继承,但是当我这样做时,我从不使用受保护的属性,因为我认为它破坏了继承类的封装. 您使用受保护的属性吗?您将它们用于什么? 解决方案 在此访谈有效Java 的作者Bill Venners关于设计的文章说: 信任子类 Bill Venners: 我应该比其他人更亲密地信任子类吗? 非子类?例如,我做 子类更容易 实施让我比我伤心 将为非子类?在 特别是,你感觉如何 ..
发布时间:2020-05-20 01:04:32 其他开发

什么时候应该使用朋友班?

可能重复: 何时应在C ++中使用"friend"? 由于缺乏关于朋友课程的文档,我跌跌撞撞.大多数书籍只是简单地解释了它,例如,摘录自 C ++:完整参考书: 很少使用朋友类.支持它们以允许处理某些特殊情况. 坦率地说,我从未见过由经验丰富的C ++程序员编写的任何好的代码中的朋友类.因此,这是我的问题清单. 继承的类与那里的基类是否具有相同的 friends ?例如, ..
发布时间:2020-05-20 01:03:45 C/C++开发

面向对象编程-类设计的困惑

我正在努力将注意力集中在面向对象的编程上. 我的理解是我们有对象,因此我们可以设计程序来镜像现实生活中的对象. 让我们看一个类层次结构: class Fruit { void Eat() { } } class Apple extends Fruit { } 很明显,如果Eat()是虚拟的,则可以多态使用Fruit.但这有道理吗?水果不能吃东西! ..
发布时间:2020-05-20 01:03:43 其他开发

复制构造函数有什么问题?为什么要使用Cloneable接口?

在对C ++进行编程时,我们曾在需要时创建拷贝构造函数(因此我们被教导).几年前切换到Java时,我注意到现在正在使用Cloneable接口. C#遵循相同的路线定义了ICloneable接口.在我看来,克隆是OOP定义的一部分.但是我想知道,为什么要创建这些接口,并且复制构造函数似乎已被删除? 当我想到这一点时,我想到如果需要复制其类型未知的对象(例如引用基本类型)的副本,则复制构造函数将 ..
发布时间:2020-05-20 01:02:36 其他开发

如何打破我的程序编码习惯?

我最近在与OOP相关的 请删除单词管理器 说话时的词汇量 关于类名.的名称 类应描述其“ 目的.经理只是另一个字 为垃圾场.任何 功能将适合那里.这个单词 造成了许多极端的原因 不良设计 此评论体现了我为成为一名优秀的面向对象开发人员所做的努力.在一个只有程序编码员的组织中,我从事程序编码已有很长时间了.似乎我们生成的OO代码相对较少,其主要策略似乎是将问题分解为容易识别为离散单元的类 ..
发布时间:2020-05-20 01:01:55 其他开发

用例到类图-我该怎么办?

我希望您能从我的USE案例图中准确地创建类及其关系(泛化,关联,聚合和组合)的指南(请参见下文). 我正在尝试创建此类图,以便可以使用它来创建一个简单的在线PHP应用程序,该应用程序允许用户注册帐户,登录和注销以及从MySQL数据库中存储,搜索和检索数据. 我的课程正确吗?还是应该创建更多的类?如果是这样,缺少哪些类?将注册,登录,注销,search_database和add_to_d ..
发布时间:2020-05-20 01:00:13 其他开发

哪个班级的设计更好?

哪个类的设计更好,为什么? public class User { public String UserName; public String Password; public String FirstName; public String LastName; } public class Employee : User { public Strin ..
发布时间:2020-05-20 00:59:20 其他开发

如何在Python中设计类?

我在以前的问题用于检测爪子和 现在我有了包含以下内容的数据: 大约30条狗; 每个都有24个测量值(分为几个子组); 每次测量至少有4个触点(每爪一个) 每个联系人分为5部分和 具有几个参数,例如接触时间,位置,总力等. 显然,将所有内容粘贴到一个大对象中并不会减少它,所以我认为我需要使用类而不是当前的许多函数.但是,即使我已阅读《学习Python》中有关类的章节,但仍无法将其 ..
发布时间:2020-05-20 00:59:09 Python

PHP:Require()和类层次结构

我主要在考虑这个问题,这是一个C ++/C#程序员,这可能有助于将其视为现实.我无法找到问题的简单答案,因此,我很抱歉是否有一个简单的答案.这似乎是一个非常普遍的问题. 假设我有 A类,它是 B类的实例的容器.反过来, B类是 C类实例的容器.通过容器,我的意思是每个类都包含某些种类的对象的数组以及描述这些对象的一些常规参数.每个类都存储在[className] .php 中 现在,我有 ..
发布时间:2020-05-20 00:56:49 PHP

如何在C#静态和非静态方法之间做出选择?

[编辑] 我最初的问题是“为什么要在静态和非静态之间做出选择?两者都做同样的事情……" 不幸的是,它被编辑为一个C#特定的问题,我真正想避免的事情. 所以,让我做些补充: 当我说接口时,我不是指C#-keyword-interface,而是我理解的类似C ++-interface的东西:一组定义良好的函数,可与我的对象一起操作. 当说削弱我的界面时,我的意思是我有不同的功能 ..
发布时间:2020-05-20 00:44:54 C#/.NET

何时/为何在课堂上将函数设为私有?

我什么时候应该创建函数private,为什么它是个好主意? 解决方案 当您不需要其他对象或类来访问该函数时,应该从内部调用它,则应创建一个函数private.课. 坚持最低特权原则,仅允许访问绝对必要的变量/函数.不符合此条件的任何内容都应为private. ..
发布时间:2020-05-20 00:37:35 C/C++开发

PDO连接类/代码和类设计

我试图了解如何将PDO与“连接"类一起使用. class db { private static $dbh; private function __construct(){} private function __clone(){} public static function connect() { if(!self::$dbh ..
发布时间:2020-05-15 05:18:52 PHP

什么构成了POJO/POCO中的富域模型?

两者之间有什么区别 一个简单的 fields-accesors-mutators 类 丰富的课程 什么构成了业务领域类中的丰富建模? 解决方案 此处使用的“丰富"表示“丰富行为"(与状态相对). 存在技术行为和领域行为. accessors 和 mutators 是技术性的;他们缺少定义业务兴趣的“为什么". 域对象表示“为什么"并封装“方式".实际上,所有对象都 ..
发布时间:2020-05-10 19:18:05 其他开发

class和dataType有什么区别

当我阅读UML规范时: class has a set of attributes/operations and data type has a set of attributes/operations 1)关于数据类型的属性/操作 这是什么意思? 因为我不知道这种数据类型如何具有属性和操作? 2)类和数据类型之间的主要区别是什么? 解决方案 根据UML 2.4.1 ..
发布时间:2020-05-10 19:16:46 其他开发

为什么16字节是C#中struct的推荐大小?

我阅读了Cwalina的书(对.NET应用程序的开发和设计的建议). 他说,一个设计良好的结构的大小必须小于16个字节(出于性能目的). 这到底是为什么? 并且(更重要的是)如果我在 64位应用程序,我可以具有相同的效率的更大结构吗? wikipedia.org/wiki/Intel_Core#Core_i7"rel =" noreferrer“> Windows 7 x64下的 ..
发布时间:2020-05-08 21:24:35 C#/.NET

Ruby-在模块/类之间共享记录器实例

研究一个小的Ruby脚本,该脚本可以在网上发布并抓取各种服务.我有一个内部有几个类的模块: module Crawler class Runner class Options class Engine end 我想在所有这些类中共享一个记录器.通常,我只是将其放在模块中的常量中,然后像这样引用它: Crawler::LOGGER.info("Hello, world") ..
发布时间:2020-05-03 07:37:53 其他开发