最赞回答 / 傻16
Animal a1 = new Dog();//Animal的引用指向了Dog对象Animal a2 = new Cat();//Animal的引用指向了Cat对象Dog d1 = (Dog) a1 ;//将a1进行强制转换,父类到子类的转换。Dog d2 = (Dog)a2;//报错,a2引用指向的是Cat对象,同个父亲下的子类无法转换,哪怕是强转。
2019-04-17
已采纳回答 / AinyG
for一开始运行,判断int i=str.length(),代表i等于长度值,也就是最后一个数,会从这添加"," 然后才开始从后往前每隔三个添加。而str.length()-3,代表i长度倒数第三个,从这正好需要添加","然后从后往前每隔三个添加。 所以-3。
2019-04-15
已采纳回答 / Yesabella
在java中,一个字符等于多少字节?或者更详细的问:在java中,一个英文字符等于多少字节?一个中文字符等于多少字节? 答案Java采用unicode来表示字符,java中的一个char是2个字节,一个中文或英文字符的unicode编码都占2个字节,但如果采用其他编码方式,一个字符占用的字节数则各不相同。在 GB 2312 编码或 GBK 编码中,一个英文字母字符存储需要1个字节,一个汉子字符存储需要2个字节。在UTF-8编码中,一个英文字母字符存储需要1个字节,一个汉字字符储存需要3到4个字节。在UTF...
2019-04-07
已采纳回答 / 慕无忌7406412
总体上说没有大问题,就是有一个地方有个小问题,按照书名找书那里,抛出“图书不存在”异常的时候(throw new NobookException("图书不存在,请重新输入");),是在for语句里面,程序无论如何都会抛出异常。因为当你输入书名是“西游记”的时候,当i循环到等于1 的时候抛出异常,当你输入的书名不是“西游记”的时候,i=0马上就抛出异常了。
2019-03-29
已采纳回答 / AlexanderW
此时此刻,你的obj是类型是Object(因为你equals的方法中传递过来的是一个Object),你使用了instanceof只是用来判断你的obj是不是Course的一个实例,但obj本身自己还是一个Object类型。如果你不进行一次强转,那么obj就无法访问到Course的成员变量和方法,那接下来的course.name这种代码编译器都会自动报错!所以一定要进行一次强转,obj才会真正变成Course
2019-03-27
已采纳回答 / qq_慕容0434117
首先导入的应该是java.util.List,而不是Java.awt.List,然后在构造方法中你创建了一个ArrayList但是并没有赋值给coursesToSelect, 应该写成coursesToSelect = new ArrayList();后面的(java.util.List)强制类型转换都去掉
2019-03-26
已采纳回答 / 慕沐6598592
int index = fileName.lastIndexOf('.');//获取文件名中最后一次出现"."号的位置,调用lastIndexOf()方法,它的返回值是int类型,返回值如果是-1表示字符串中没有".",如果是0表示"."在第一个位置,题目要求必须包含"."号,且不能出现在首位,所以要判断的条件是index>0时为true; index2调用的是int indexOf(int ch)//查找ch字符在该字符串中第一次出现的位置,返回值如果是-1表示字符串中没有"@"
2019-03-19
已采纳回答 / qq_Mathilda_3
异常A被捕获后抛出了一个新的异常B,如果你不用initCause()来保存异常A的原始数据,你就不知道异常B发生的具体原因,使用initcause()以后,你可以在捕获异常B后使用getCause(),来获取导致B异常的原因。
2019-03-19
已采纳回答 / qq_宋先森_vzJSW5
你这里是重新创建了一个新的course 对象,和之前存储的虽然内容相同,但是存放地址不同,remove需要remove你已经添加了的那个01课程,
2019-03-13