为了账号安全,请及时绑定邮箱和手机立即绑定

构造方法 对象 方法

package imooc;


public class Glass {

double heigh;

double weight;

public static void main(String[] args){

System.out.println("33333");

Glass hello=new Glass();

Glass hello2=new Glass(2.3,4.5);

hello.Glass();

hello.Glass(4.3,5.4);

}

public Glass(){

System.out.println("无参的构造方法执行了");

}

public Glass(double newHeigh,double newWeight){

heigh =newHeigh;

weight =newWeight;

System.out.println("heigh"+heigh,"weight"+weight);

}

}

大家帮我看看这个代码??我不太明白那个对方法的调用?对象是必须要建立的吗?而方法调用不调用都可以?这里怎么调用不了呢?最后的输出的也不对。。。。

正在回答

3 回答

大家帮我看看这个代码??我不太明白那个对方法的调用?对象是必须要建立的吗?而方法调用不调用都可以?这里怎么调用不了呢?

我来慢慢回答你的问题。

public static void main(String[] args){

System.out.println("33333");  //打印输出33333

Glass hello=new Glass();//通过无参的构造方法,来实例化这个对象。所以会调用那个没有接受参数的构造方法

Glass hello2=new Glass(2.3,4.5);//通过那个有参的构造方法来实例化这个对象。调用那个有参数的构造方法

hello.Glass(); //通过hello调用这个类中的这个方法

hello.Glass(4.3,5.4);//通过hello对象调用这个类中的这个方法

}

这里主要是要给你讲了java 中的多态。 一个类的多种形态,通过参数的不同得到不同的结果。

同一个消息,和不同对象的结合得到不同的结果。称之为多态....慢慢体会吧!


0 回复 有任何疑惑可以回复我~

hello.Glass();

hello.Glass(4.3,5.4);

这两个注释掉再运行一次

0 回复 有任何疑惑可以回复我~

Glass类有两种构造方法,一种是传参数,一种是无参数,你在new一个对象的时候就能选择执行哪种构造方法

0 回复 有任何疑惑可以回复我~
#1

xibu 提问者

我。。。。这样 调用方法出错了吗??运行不出来。。。
2015-07-25 回复 有任何疑惑可以回复我~
#2

Raine 回复 xibu 提问者

最后一行改成System.out.println("heigh" + heigh+ "weight" + weight); hello.Glass(); hello.Glass(4.3,5.4);删掉
2015-07-25 回复 有任何疑惑可以回复我~
#3

xibu 提问者 回复 Raine

删除最后一个为什么呢??这样不是调用方法吗? 不调用就不会输出的吧。。。
2015-07-25 回复 有任何疑惑可以回复我~
#4

Raine 回复 xibu 提问者

好吧,是两个都注释掉或者删除,不能这样直接调用构造方法,构造方法只有在new一个对象的时候使用
2015-07-26 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530694    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

构造方法 对象 方法

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信