新手关于java中new的使用问题。。。紧急!!!

xushutao25ford 2009-12-18 11:02:53
class component1
{
component1( )
{
System.out.println("component1");
}
}
class component2
{
component2( )
{
System.out.println("component2");
}
}
class Root
{
component1 x=new component1( );//为什么不可直接用new component1( );
component2 y=new component2( );
Root( )
{
System.out.println("Root");
}
}
class Stem extends Root
{
Stem( )
{
System.out.println("Stem");
}
public static void main(String[ ] args)
{
new Stem( );//为什么在这里又可以啊?
}
}
刚刚接触java,学到了继承,关于new的使用有点不大懂,希望大侠们帮一帮啊!
在一本书中看到可以直接用new **(),那为什么上面component那个地方不行啊?而下面stem那个地方又行了!
谢谢
...全文
157 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
bobo415 2009-12-18
  • 打赏
  • 举报
回复
而且
component1 x=new component1( );//为什么不可直接用new component1( ); 这里是可以用的
只是前面申明了一个变量去接收这个对象
后面一般是申明一个对象做方法的参数
licip 2009-12-18
  • 打赏
  • 举报
回复
当然可以呀。你那个没有错呀。
艾尼乌米 2009-12-18
  • 打赏
  • 举报
回复
而且
component1 x=new component1( );//为什么不可直接用new component1( );
他是Root类的一个类型为类的属性,定义一个属性必须指明他的类型啊
艾尼乌米 2009-12-18
  • 打赏
  • 举报
回复
我形象一点给你解释一下,直接new XX()建立的是一个没有“名字”的实例对象,一般只用一次,因为,再想处理这个对象时,虽然它可能还存在,但是你找不到它了,因为你没给他指定一个“名字”,你再new一个也不一定是原来的它了。你如果是这样:
component1 x=new component1( );//再想调用名字为“x”的component1类的对象,就方便了。
这么说很不专业,但是我想可能更形象一点。
daisycool 2009-12-18
  • 打赏
  • 举报
回复
行啊,为什么不行?
AspireHouse 2009-12-18
  • 打赏
  • 举报
回复
一个类的{}中只能有属性,构造,方法
component1 x=new component1( );x代表属性 new component1代表一个对象
你单纯写个对象说明什么?
zhao_tk 2009-12-18
  • 打赏
  • 举报
回复
lz还是先把格式排下吧,你不知道看着多累.
laorer 2009-12-18
  • 打赏
  • 举报
回复
楼主,还是排下版吧,
我试了下,没你说的问题

class component1 {
component1() {
System.out.println("component1");
}
}

class component2 {
component2() {
System.out.println("component2");
}
}

class Root {
component1 x = new component1();//为什么不可直接用new component1( );
component2 y = new component2();

Root() {
System.out.println("Root");
}
}

class Stem extends Root {
Stem() {
System.out.println("Stem");
}

public static void main(String[] args) {
new Stem();//为什么在这里又可以啊?
}
}
sean1203 2009-12-18
  • 打赏
  • 举报
回复
应该可以的
请明确访问权限,private ,protected还是默认,public的
请确保构造器能在其他类中访问

main函数是static的
是独立于对象的,是类的

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧