我想转换:
HECHT, WILLIAM
Run Code Online (Sandbox Code Playgroud)
至
Hecht, William
Run Code Online (Sandbox Code Playgroud)
在c#中.
这样做的任何优雅方式?
Java要求如果在构造函数中调用this()或super(),它必须是第一个语句.为什么?
例如:
public class MyClass {
public MyClass(int x) {}
}
public class MySubClass extends MyClass {
public MySubClass(int a, int b) {
int c = a + b;
super(c); // COMPILE ERROR
}
}
Run Code Online (Sandbox Code Playgroud)
Sun编译器说"调用super必须是构造函数中的第一个语句".Eclipse编译器说"构造函数调用必须是构造函数中的第一个语句".
但是,您可以通过重新安排代码来解决这个问题:
public class MySubClass extends MyClass {
public MySubClass(int a, int b) {
super(a + b); // OK
}
}
Run Code Online (Sandbox Code Playgroud)
这是另一个例子:
public class MyClass {
public MyClass(List list) {}
}
public class MySubClassA extends MyClass {
public MySubClassA(Object item) {
// Create a list …Run Code Online (Sandbox Code Playgroud) 有效Java和其他资源一书提供了一个很好的解释,说明在使用可序列化的Java类时如何以及何时使用readObject()方法.另一方面,readResolve()方法仍然有点神秘.基本上我发现的所有文件要么只提到两个中的一个,要么仅单独提及.
仍未得到答复的问题是:
我希望你能对这件事有所了解.
我试图<object>在页面上添加一个html片段.我知道我可以通过标签名称访问元素,并且我可以更改元素,但我可以简单地附加到它吗?
另外,我想将它添加到每个标记的内容中,而不是文档的末尾.以下哪种方法有效?
假设我有一个对象的实例,我知道它属于通过C#中超类型的引用传递给我的某个子类型的子类,我习惯于看到类似Java的方式完成类型转换(假设"引用"是超类型):
if (reference is subtype){
subtype t = (subtype)reference;
}
Run Code Online (Sandbox Code Playgroud)
但是最近我遇到过这样做的例子:
if (reference is subtype){
subtype t = reference as subtype;
}
Run Code Online (Sandbox Code Playgroud)
这两个完全相同吗?有什么区别吗?
我有两个文本框,一个用于帐单地址字段,另一个用于送货地址字段.当用户在"帐单邮寄地址"文本框中键入内容时,由于以下绑定方案,送货地址文本框会获得相同的值:
<TextBox Name="txtBillingAddress" Text="{Binding BillingAddress, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
<TextBox Name="txtShippingAddress">
<TextBox.Text>
<MultiBinding Converter="{StaticResource AddressConverter}">
<Binding ElementName="txtBillingAddress" Path="Text" Mode="OneWay" />
<Binding Path="ShippingAddress" UpdateSourceTrigger="PropertyChanged" Mode="TwoWay" />
</MultiBinding>
</TextBox.Text>
</TextBox>
Run Code Online (Sandbox Code Playgroud)
这在一定程度上可行.我还希望将送货地址绑定到我的数据库实体,因为帐单地址是.我的问题是,虽然发货地址文本框中填充了帐单地址中输入的内容,但在发生这种情况时不会触发ConvertBack方法.只有在货物地址文本框中直接输入内容时才会触发.
我错过了什么?
我的代码是: dvController.selectedCountry = selectedCountry;
为什么我在"不是结构或联合的东西"中得到错误"请求成员'selectedCountry'?"
如果您恰好使用2的幂,则左右移位显然比大多数甚至所有CPU上的乘法和除法运算更快.但是,它可能会降低某些读取器和某些算法的代码清晰度.位移对于性能是否真的是必要的,或者我可以期望编译器或VM注意到这种情况并对其进行优化(特别是当2的幂是文字时)?我主要对Java和.NET行为感兴趣,但欢迎深入了解其他语言实现.
c# ×4
java ×3
.net ×2
c++ ×1
casting ×1
constructor ×1
data-binding ×1
dom ×1
innerhtml ×1
iphone ×1
javascript ×1
map ×1
multibinding ×1
oop ×1
optimization ×1
singleton ×1
stl ×1
string ×1
types ×1
wpf ×1
xcode ×1