Thinking in Java 讨论区 呵呵,有什么问题就问咯!我支持你![email protected] 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 [email protected]我也是学java的 [email protected]将长期把java进行到底! [email protected]初学者也行吧? I want to join !![email protected] [email protected]I want to join in ... 我只会hello world,能不能加我,我也想学java。[email protected] 这里欢迎所有Java的爱好者,当然初学者也一样,我也是初学者啊 大家一起讨论时好事[email protected] 喜爱Java[email protected] 我正在学习这本书[email protected] 有没有ICQ的同志?ICQ:348732090 [email protected]在jsp这一块也许我可以对你有一定的帮助 [email protected]我是JAVA追求者 [email protected]正在学习 打算在暑假学,[email protected] 我也是的[email protected] 我初学者,[email protected] 在书<<JAVA 编程思想>> 第二版,231页说产生抽象类对象是不安全的,可是在233页的下面却有产生抽象类对象的代码存在,// 232 页的抽象类定义abstract class Instrument{ int i; public abstract void play(); public String what(){ return "Instrument"; } public abstract void adjust();}// 233 页的产生抽象类的代码.public class Music4{ ... ... .. public static void main(String[] args){ Instrument[] orchestra = new Instrument[5]; ... ... .. }}这不是前后矛盾吗? 晕..我自已另写的一简单代码做测试.//abstract class actor{}class hiactor extends actor{ public void act() { System.out.println("in hiactor.act()"); } public static void play(actor n) { ((hiactor)n).act(); }}public class actors{ public static void main(String[] args){ actor ac=new actor(); //编译时这行报错 //hiactor s=new hiactor(); //s.play(ac); hiactor.play(ac); }} 用J2SE的编译器报错提示: actor is abstract; cannot be instantiated actor ac=new actor();按提示应该是不能产生抽象类对象了,那书上的那段代码是有问题了,还是其他原因....大家在看这本书的话帮助我理清这个思路.能否产生抽象类? to : benjiamen(熊猫) 书上没错,Instrument[] orchestra = new Instrument[5];这条语句只是表明 orchestra 可以指向5个继承了Instrument 类的对象,并没有生成具体的对象,即没有实例化 join!!qq195904346java开发主体环境 同意yangchongwu() 声明Instrument[] orchestra = new Instrument[5];之后,orchestra 里面包含的只是5个引用,并未建立Instrument实例。我这么描述好像也不严谨。 to yangchongwu() 这么说, new 如针去数组变量只是产生相应数量的引用,而不实例化具体每个数组成员 而对单个变量是会产生实例引用,我说的对否. 是的,声明Instrument[] orchestra = new Instrument[5];之后,orchestra[1]..orchestra[5]都是null ,只可以接受Instrument类派生的对象,而orchestra是实例化的Instrument数组对象,应该可以接受任何的一维Instrument组 runtime 执行程序的问题 java如何取得文件夹下所有的子目录 静态内部类-强制转换时出错? 我是初学者,请问一下包的问题。 一些关于串口通讯的问题,希望有人帮我解答 NMI's Java Code Viewer 6.0反编译过来的程序为何编译不了 递归问题 有对图象处理熟悉的吗? 关于环境设置 请问SCJP里要考Transient和Volatile这两个modifier吗?刚才在一本书上看到说不用考,不敢确定,来问问大家 想不明白 怎样编写象股市分析软件相仿的软件?
我也是学java的
将长期把java进行到底!
初学者也行吧?
[email protected]
I want to join in ...
[email protected]
[email protected]
[email protected]
[email protected]
在jsp这一块也许我可以对你有一定的帮助
我是JAVA追求者
正在学习
[email protected]
[email protected]
在书<<JAVA 编程思想>> 第二版,231页说产生抽象类对象是不安全的,
可是在233页的下面却有产生抽象类对象的代码存在,// 232 页的抽象类定义
abstract class Instrument{
int i;
public abstract void play();
public String what(){
return "Instrument";
}
public abstract void adjust();
}// 233 页的产生抽象类的代码.public class Music4{
...
...
..
public static void main(String[] args){
Instrument[] orchestra = new Instrument[5];
...
...
..
}
}这不是前后矛盾吗? 晕..
我自已另写的一简单代码做测试.//
abstract class actor{}class hiactor extends actor{
public void act() {
System.out.println("in hiactor.act()");
}
public static void play(actor n) {
((hiactor)n).act();
}
}public class actors{
public static void main(String[] args){
actor ac=new actor(); //编译时这行报错
//hiactor s=new hiactor();
//s.play(ac);
hiactor.play(ac);
}
} 用J2SE的编译器报错提示: actor is abstract; cannot be instantiated
actor ac=new actor();
按提示应该是不能产生抽象类对象了,那书上的那段代码是有问题了,还是其他原因....大家在看这本书的话帮助我理清这个思路.能否产生抽象类?
书上没错,Instrument[] orchestra = new Instrument[5];这条语句只是表明 orchestra 可以指向5个继承了Instrument 类的对象,并没有生成具体的对象,即没有实例化
qq195904346
java开发主体环境
orchestra 里面包含的只是5个引用,并未建立Instrument实例。我这么描述好像也不严谨。
而对单个变量是会产生实例引用,我说的对否.