这个程序员的三行情书第三行什么作用?

第一次用eclipse写java程序出了这个问题,这个serialVersionUID有什么作用吗,我想知道_百度知道
第一次用eclipse写java程序出了这个问题,这个serialVersionUID有什么作用吗,我想知道
The serializable class BallGame does not declare a static final serialVersionUID field of type long
或者变动了2个属性的顺序,但数据是错乱的,在类变化之后反序列化旧的数据。如果你没有修改这个值,很可能反序列化成功。当在新版本的类中反序列化旧版本生成的数据流时,你应该同时修改这个UID的值,比如你把一个int改为long,会引起其他的错误确定类的版本比如你有个 BallGame类,可以提示版本不正确,实现了Serializable接口当你修改类的数据时
来自团队:
其他类似问题
2人觉得有用
为您推荐:
其他1条回答
不生成也是可以的.Serializable接口后.io当你的类实现了java,eclipse工具要求生成的
java程序的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁这个c++程序中,第三行有什么问题?date fun (date d);_百度知道
这个c++程序中,第三行有什么问题?date fun (date d);
print ();&&&#39,1);endl.&quot,month(m);.print ().&&;date1;&&year&&lt,1;date2=fun(date3);}int date:&&quot:year(y);date3;}private.&cout&lt.'year&&#39:date(int y:date(const date& d){year =d;}date(const date &d);cout&&&~date(){cout&date date3(date1);day=d::;&lt:&quot.&#39:&using namespace std.&constructor of date with 1
parameter,int d),int d);&&}int isleapyear();&void print(){cout&temp =d;&,day(d){cout&}int main(){date date1(2000;.print ();&cout&}date fun(date d){date temp!=0)||(year%400==0);date2;&lt:;endl.&&}copy &&&quot,0);date(int y =2000);&&lt:return 0:year(y){month =10;day&&&lt.&};month&cout&lt,0;class date{public,date2(0,&&date fun (date d);day&:&iostream&gt,&lt:isleapyear(){return (year%4==0&&year%100;&date1;date3.month=d;date2;&day=1;&&&lt,;&constructor of date with 3&;&&cout&month&lt.month #include &lt:date(int y,&&quot
提问者采纳
这一行应该放在date类定义的下面吧。或者在这一行前面加上一个date类的声明。否则应该会报错找不到date这个标识
提问者评价
其他类似问题
为您推荐:
其他1条回答
第三行你用到了类data,在这里还没有定义,你需要将这个函数定义放到类的定义后面。
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁谢谢你刚刚的回答 那像下面的可以计算出具体的值吗?当d,a已经确定的情况下 &m的值能否计算出来?是怎么计算的?因为需要把这一段写成程序 如果第二行和第三行的式子可以积分出来的话 麻烦能否写出来?
我在Matlab中算了下,K(m)和K'(m)都是积不出来的,只能算数值解.另:K'(m)和K(m)是求导的关系吧,能不能用起来?只能帮你到这了.
为您推荐:
其他类似问题
扫描下载二维码16:27 提问
求n的阶乘 为什么程序倒数第三行又有一个sum=1; ?
int n,i=1,sum=1;
system("color 2e");
while(scanf("%d",&n)!=EOF)
for(i=1;i&=n;i++)
sum=sum*i;
printf("%d",sum);
system("pause");
按赞数排序
首先这个程序可以看做这么几块:
1.第一块,变量初始化
int n,i=1,sum=1;
system("color 2e");
这块里面你看到的i、sum都被给了一个值--1,这个赋值在程序中,是只**执行一次**的;
2.第二块,阶乘的算法实现部分,是一个大的循环体
while(scanf("%d",&n)!=EOF)
只要你还在输入数字,上面这个while大括号里的东西会**一次一次执行**。
大括号里面,你看到有一个:
for(i=1;i&=n;i++)
sum=sum*i;
这段代码在进行阶乘的计算,比如输入的数字是3,他就会计算出3的阶乘,这个阶乘结果就保存在了sum这个变量里。
好的,注意到了吗?“这个阶乘结果就保存在了sum这个变量里”,也就是说,sum的值,每循环一次就会变了,不是1了,比如,这里就是6了。
假如我接着再输入一个4,我们说过只要还在输入数字就重复执行while大括号里面的东西,假如我不给sum赋值回1,那么第二次4的阶乘就会从4*1*2*...计算结果就会错误。所以我们必须要给sum赋值回1,而且这个赋值的代码必须在while大括号里面,因为每一次新的循环只执行大括号里面的语句。
您好,你的这个程序可以实现输入一个数,按下Enter就实现一次求解,而在每次求得解之后sum的值就变为当前所求数字的n!的值,为了不影响下次输入数字的值,倒数第三行只是起到重置的作用罢了!
其实代码如果改成这样,你就理解了:
int n,i=1,sum=1;
system("color 2e");
while(scanf("%d",&n)!=EOF)
for(i=1;i&=n;i++)
sum=sum*i;
printf("%d",sum);
system("pause");
因为你的程序被设计为不止执行一次。仅此而已。
如果是累加,就设置为0。
而求积就设置为1。sum这个名字具有迷惑性,不是和,而是积。
sum只是一个计数的,这里是把阶乘的结果放到sum里,然后输出,但是最后要把sum清零,否则下次输入n,计算的就不是n的阶乘而是n的阶乘乘以上一次sum的值,
这个,因为那里有个while循环。
表示,你只需要启动一次程序,
然后在while中,
输入第一个数字N,计算输出N的阶乘之后
再输入第二个N,计算出第二个N的阶乘
再输入第三个N......
说那么多废话,意思就是,那个sum=1;是为下一次输入计算N的阶乘做的准备。
将sum重置成1,用于下一次计算阶乘,不然数据就乱了。
418关注|575收录
1596关注|145收录
479关注|971收录
其他相似问题
相关参考资料用Java编写一个小程序,1到9几个数字 分成三行三列 第三列的数字是第一行跟第二行相加的值,每个数字用一
你意思是不是1到9共9个数字,分三行三列.其中本行第三个数字是本行第一个和第二个数字之和?并且每个数字只能用一次?如果是这样的话,你这个程序根本写不出来.原因是:1+2+3+4+5+6+7+8+9=45,45是个奇数,必须(1)由两个偶数和一个奇数,(2)或者三个奇数组成.如果要求本行第三个数字是本行第一个和第二个数字之和,那么每行都必须是偶数.三个偶数怎么组成45~,我是没想明白.
为您推荐:
其他类似问题
扫描下载二维码

我要回帖

更多关于 行茶程序的三个阶段 的文章

 

随机推荐