我有课:
class Parent
end parent;
class Child
extends Parent;
end Child;
在另一个类中,我需要声明一个Parent类型的变量,并通过child类型的实例对其进行初始化;类似于Java语句的内容:
Parent p = new Child();
Modelica的类概念与Java的类概念没有可比性。例如,您不创建新对象,因此没有类似
Parent p = new Child();
相反,您只需通过编写
Parent p;
因此,不能将子对象分配给父基类。相反,可以使用Modelica的继承特性进行重新声明。这意味着,您可以在某个地方实例化一个可替换的基类,以后可以使用redeclare
语句对其进行更改。
package Demo
class Parent
constant Real c=1;
end Parent;
class Child
extends Parent(c=2);
end Child;
model Example1
replaceable Parent cls;
end Example1;
model Example2
extends Example1(redeclare Child cls);
end Example2;
end Demo;
扩展
重新声明
我想把字典的value元素赋给一个字符串变量。 在swiftUI中,字典中的所有值元素都作为字符串返回?类型 什么时候有绳子?类型分配给字符串变量,该字符串变量在swiftUI应用程序中显示为可选(“字符串尝试显示”)。 如何去掉应用程序显示中的“可选”选项?
我对Java语言中的类型化有一个误解。问题是ClassCastException。例如,在这段代码中,假设动物是Dog类的父类,
问题内容: 我有几个提供的接口 和一个实现第一个的类: 如果我不能更改任何接口,那么在保持实现尽可能通用的同时最好的做法是什么? 编辑 我无法中断实例化的其他一些代码, 因此我在实现中也应该有两种通用类型。 问题答案: 问题是显然不是。Java是强类型的,不会允许您执行此类操作。 您可以将其强制转换为,在这种情况下,您仍然会收到有关未经检查的转化的警告。这意味着此转换是 不安全的 。 或直接使用代
我在Java中读到了关于将超类变量类型化为子类的知识,反之亦然。请告诉我哪些是有效的? 动物是超级类,有猫和狗子类。
我有以下几点: 如何打印的类型? 使用和不起作用。还有其他方法可以打印号码的类型吗?
这基本上是我第一次接触Java泛型类型,我不知道下面的代码有什么问题。 我有一个helper类,它具有一个静态函数inRange-usng-generic类型,该函数应该从输入列表中返回对象列表,这些对象在索引处的对象周围的特定范围内(我还没有测试它,如果它工作正常与否,这不是问题): 然后我想在一个类中使用它: 类型为