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);
}
}
大家帮我看看这个代码??我不太明白那个对方法的调用?对象是必须要建立的吗?而方法调用不调用都可以?这里怎么调用不了呢?最后的输出的也不对。。。。
大家帮我看看这个代码??我不太明白那个对方法的调用?对象是必须要建立的吗?而方法调用不调用都可以?这里怎么调用不了呢?
我来慢慢回答你的问题。
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 中的多态。 一个类的多种形态,通过参数的不同得到不同的结果。
同一个消息,和不同对象的结合得到不同的结果。称之为多态....慢慢体会吧!
hello.Glass();
hello.Glass(4.3,5.4);
这两个注释掉再运行一次
Glass类有两种构造方法,一种是传参数,一种是无参数,你在new一个对象的时候就能选择执行哪种构造方法