1 whichofthefollowingfragmentsmightcauseerrors? (5% ) ) )。
A. String s=“Gone with the wind”
String t=” good ";
String k=s t;
是的,String重载了运算符
B. String s=“Gone with the wind”
字符串t;
t=s [3]“一个”
不,s[3]表示字符串数组s。 这里是字符串s。
C. String s=“Gone with the wind”
String standard=s.toUpperCase (;
没关系
d.string s=“家庭目录”
stringt=s“目录”
不,String没有重载-运算符
2公共类父项{ (5% ) }
公共int addvalue (inta,int b ) {
int s;
s=a b;
返回s;
}
}
class Child extends Parent {
}
whichmethodscanbeaddedintoclasschild?
a.intaddvalue(inta,int b ) {//do something…}
否,默认情况下权限为default
B. public void addValue () {//do something…}
是的,是另一种方法
c .公共int高级值(inta ) {//do something…}
是的,另一种方法是,如果有相同的方法名称,则根据变量数量的不同选择并重载方法
d .公共int addvalue (inta,int b ) throws my exception (//do something…)
不,异常不存在于父类中,不能抛出
e .公共int addvalue (inta,int b )/dosomething ) )。
是的,重写了父类的方法
3Given:(5% ) ) ) ) ) )。
Exhibit:
公共类主{
publicstaticvoidstringreplace (字符串文本) {
text=text.replace('j ',' I ' );
}
publicstaticvoidbufferreplace (字符串缓冲器文本) {
text=text.append('c ';
}
publicstaticvoidmain (字符串[ ] args ) {
字符串文本字符串=新字符串(Java );
stringbuffertextbuffer=new string buffer (Java );
字符串替换(文本字符串;
缓冲区替换(文本缓冲区;
system.out.println (textstringtextbuffer;
}
}
/*执行结果:
javajavaC
*/
String类是不变的类,是final类,而StringBuffer类是可修改的,修改的是对象本身。 (
What is the output?
4 .相对于
int a=4;
1 ) a=(a );
因为a在前面,所以右边的值为4,之后左边的a=5,所以结果为a 5=9
2 ) a=(a );
因为a在前面,所以右边的值为5,并且a=5,所以结果为a 5=10
以下编译错误:
3 ) (a )=a;
4 ) (a )=(a );
5 ) (a )=(a );
以下只能用c编译。
6 ) (a )=a;
首先执行a,此时设a=5,然后该式的右边的值为5,所以结果为a 5=10
7 ) (a )=(a );
如果先执行左边a,则a为5,然后执行a,所以该式的右边为5,然后a为6,所以结果为a 5=11
8 ) (a )=(a );
如果先执行a,然后设a=5,再执行a、a=6,则式右边的值为6,所以结果为a 6=12
总结:由于运算的优先顺序比=高,所以在公式中先执行的运算之后=被执行。
扩展:
9 ) a=(a ) a
首先执行a,然后设为a=5。 在这种情况下,第一个括号的值为a。 另一方面,在这种情况下,第二个括号表达式的值为5,然后从右到左分配a,因此结果为a 5=10
10 ).a=(a ) (a ) ) ) )。
先执行a,然后设为a=5。 此时,第一个括号的值为a,执行a后,a=6。 另一方面,此时,第二个括号的表达式的值为5,然后从右向左代入a,因此结果为a 5=11
11 ) a=(a ) (a ) ) ) )。
先执行a,然后设为a=5。 此时,第一个括号的值为a,执行a后,a=6。 另一方面,此时,第二个括号的表达式的值为6,然后从右向左代入a,因此结果为a 5=11
12 ) a=(a ) a
首先执行a,然后设为a=5。 在这种情况下,第一个括号的值为a。 另一方面,在这种情况下,第二个括号表达式的值为5,然后从右到左分配a,因此结果为a 5=10
13 ) a=(a ) (a ) ) ) )。
先执行a,然后设为a=5。 此时,第一个括号的值为a,执行a后,a=6。 另一方面,此时,第二个括号的表达式的值为5,然后从右向左代入a,因此结果为a 5=11
14 ).a=(a ) ) a ) ) ) ) )。
首先执行a,然后a=5,此时第一个括号的值为a,然后a=6,然后第二个括号的表达式的值为6,然后从右向左代入a,所以结果为a 6=12
代码:
#包含
#包含
用户命名空间STD;
int main () )。
int a=4;
a=(a;
printf(%d(n ),a );
a=4;
a=(a;
printf(%d(n ),a );
a=4;
(a )=a;
printf(%d(n ),a );
a=4;
(a )=(a );
printf(%d(n ),a );
a=4;
(a )=(a );
printf(%d(n ),a );
a=4;
a=(a ) a;
printf(%d(n ),a );
a=4;
a=(a ) ) a );
printf(%d(n ),a );
a=4;
a=(a ) ) a );
printf(%d(n ),a );
a=4;
a=(a ) a;
printf(%d(n ),a );
a=4;
a=(a ) ) a );
printf(%d(n ),a );
a=4;
a=(a ) ) a );
printf(%d(n ),a );
返回0;
}
/*
9
10
10
11
12
9
10
11
10
11
12
*/
以上只是个人浅见。 这是一件路过的热情的往事。 请多关照。 谢谢你。