我即将涉足ASP.NET Web Development,我已经了解了一些使用Visual Web Developer和Web Forms的一些实现的基础知识.但是,我决定采用MVC路线,而不是继续沿着Web窗体路径走下去并掌握VIEWSTATE以及随之而来的所有丑陋.
在这一点上,我想知道,我应该继续学习Web窗体然后转移到MVC吗?或者可以在不了解Web Forms的情况下独立学习MVC?什么是我最好的行动方案?
我想知道如何做到这一点:
只有push,pop和isEmpty方法Stack可用.
我正在寻找理论上的帮助,而不是编码帮助,但任何见解都会受到赞赏.
在考虑1NF故障时,没有重复的元素组,如果您想对重复组的数量设置限制,该怎么办?
例如,您希望学生只列出3个电话号码.不再.如果有一个表如下被认为是1NF失败?
Student 1 Phone1 Phone2 Phone3
Sally 111-1111 222-2222 333-3333
John 555-5555 999-9999 NULL
Run Code Online (Sandbox Code Playgroud)
你会创造一个限制.这是否可接受,高效的数据库设计?
将电话号码放在一个单独的表中会不会更好,因为1NF故障要求?如果它位于单独的表中,您将如何为每个用户创建3个数字的限制?
将用户的宗教信息存储在"用户表"中时,如果你向下看一列,你会多次看到"基督徒",多次看到"穆斯林"等等,认为是正常形式的失败?哪种形式?
我看待它的方式:
1nf:没有重复的列.
2nf:没有连接的主键,因此不适用.
3nf:不依赖于nonkey属性.
以这种方式存储用户宗教似乎不会失败任何正常形式,但它似乎非常低效.评论?
int value = 5381;
for (int i = 0; i < item.length(); i++) {
value = value * 33 + item.charAt(i);
}
value &= 0x7fffffff;
value %= size;
Run Code Online (Sandbox Code Playgroud)
这是伯恩斯坦的哈希码.除了最后两行,我得到了所有东西.他们在做什么?它们也会在Java编译器中产生错误,因此它们显然不是有效的代码.他们怎么能代表他们?
我几乎不在乎他们做什么,只要他们工作lol:P
我正在玩这个功能:
public class x {
public static void main(String[] args) {
recurse(10);
}
public static int recurse(int theNumber) {
if(theNumber == 0) {
return 0;
}
else
{
System.out.println(theNumber);
theNumber--;
recurse(theNumber);
System.out.println(theNumber);
}
return -1;
}
}
Run Code Online (Sandbox Code Playgroud)
我得到了这个输出:
10 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9按任意键继续...
这怎么可能?我明白从10到0的倒计时来自哪里......但它究竟是如何重新计算的?我很确定我错过了关于递归的基本概念.有人可以填空白吗?
在用户表中,我想跟踪每个用户作为运行总计登录的时间.例如
UserID midnightTo6am 6amToNoon noonTo6pm 6pmToMidnight
User1 3 2 7 1
User2 4 9 1 8
Run Code Online (Sandbox Code Playgroud)
请注意,这是包含有关用户的更多信息的较大表的一部分,例如地址和性别,头发颜色等.
在此示例中,存储此数据的最佳方法是什么?它应该是用户表的一部分,尽管知道不是每个用户都会每次都登录(用户可能永远不会在早上6点到中午之间登录)?或者此表是1NF失败,因为重复列应该移动到单独的表?
如果存储为"用户表"的一部分,则可能存在永远不会填充数据的空单元格,因为用户从未在此时登录.
如果此数据是1NF故障并且数据要放在单独的表中,我如何确保在特定时间内+1顺利进行?我会在单独的表中搜索用户,看看他们之前是否已登录并且+1?或者如果该列是第一次在该时间段内登录,则向该表添加一列?
欢迎任何澄清或其他解决方案!
对于不支持从多个类继承的语言,这是一个普遍的OOP问题(不确定这里是否重要,只是认为我已经将这些细节放入其中),如Java:
好的,你有你的基类:
class Base {}
class Derived extends Base
{
SomeMethod(){}
}
Main()
{
Base baseInstance = new Base();
Derived derivedInstance = new Derived();
baseInstance = derivedInstance;
baseInstance.someMethod(); <<<<<< this does not work. why?
}
Run Code Online (Sandbox Code Playgroud)
为什么在将baseInstance设置为derivedInstance时,是否无法调用Derived类中定义的方法?
由于您将baseInstance设置为derivedInstance,您是否应该访问此方法?