gpt4 book ai didi

java - 如何有效地浏览 Java 中的扩展和实现?

转载 作者:行者123 更新时间:2023-12-01 21:28:08 25 4
gpt4 key购买 nike

多态性的想法在纸面上听起来很棒。在现实生活中,有人加入一个新项目并开始处理以下代码:

class Tom extends Cat implements Male {
temperature temperature = Tom.getTemperature();
..............
class Cat extends Feline{
..............
class Feline extends Mammals{
..............
class Mammals extends Animals implements WarmBlooded{
.......
interface WarmBlooded{
int temperature=96; //In case they forget to set the right temperature...
public int getTemperature(){
return temperature;
}

比较

Cat cat = new Cat(Tom, m, 96);

class Cat(Stiing name, char gender, int temperature){
....
}

当然,我们通过实现 WarmBlooded 节省了几行代码,但是代价是什么?我们必须查看多个类才能找出 getTemperature() 正在做什么 - 这不是意大利面条代码的示例吗?数以百万计的程序员选择了 Java。多态性一定是有原因的。无论如何,我必须记住我所创造的猫的名字、性别和体温。实现 Male 与创建 Tom 时传递“m”作为参数没有什么不同。为什么不将所有内容都捆绑在 Cat 中?

这是否意味着我应该阅读并理解整个项目才能开始从多态性中受益?有没有什么方法可以让浏览扩展/实现变得更容易?

<小时/>

有效浏览扩展/实现意味着什么?
它的意思是“可以在合理的时间内找出这个方法在做什么”。

最佳答案

使用IDE。例如 NetBeans 或 Eclipse。另外,使用 UML。否则很难遵循代码。它允许您单击 getTemperature() 查看实现。

 Class Feline is useless if it only holds   
Boolean isFeline = true;

但是,如果它包含多种方法,那么生活会更轻松 - 您不必记住所有这些方法。

Java 最适合大型项目。加入此类项目可能会更加困难。

关于java - 如何有效地浏览 Java 中的扩展和实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37792393/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com