猿问

为什么在构造方法里按照老师的方法进行有参数构造方法赋值,运行结果却没有数值出现?

在代码的最下面行有我数值的输入,Telephone phone2 = new Telephone(5.0f,1.4f,4f);

就是因为不太懂老师说的那个到底是啥意思,跟System.out.println()里面到底有没有值到底是啥关系呢?老师也一直强调这个是“有参数的构造方法,可以对变量进行赋值。”所以希望java粉们给予解答~

//Telephone.java

package com.project;


public class Telephone {

    float screen;

    float cpu;

    float memory;

/*

    public Telephone(){

System.out.println("无参的构造方法!");

}*/

public Telephone(float newScreen,float newCpu,float newMemory ){

if(newScreen<3.5f){

System.out.println("您输入的参数错误,自动赋值为3.5f");

newScreen=3.5f;

}else{

screen=newScreen;

}

screen=newScreen;

cpu=newCpu;

memory=newMemory;

System.out.println();

}

}


//initialTelephone.java

package com.project;


public class initialTelephone {


public static void main(String[] args) {

// TODO Auto-generated method stub

/*//通过无参的构造方法创造对象

Telephone phone = new Telephone();

*/

//通过有参的构造方法创造对象,并对对象中的实例变量赋初值

Telephone phone2 = new Telephone(5.0f,1.4f,4f);

}


}


恶化石头
浏览 1938回答 5
5回答

米沙之国

System.out.println()这样写里面没有任何变量只是起到换行的作用,System.out.println(screen)才会打印出变量screen的值,System.out.print()输出不换行;Telephone phone2 = new Telephone(5.0f,1.4f,4f);会执行public Telephone(float newScreen,float newCpu,float newMemory )方法;如需输出Telephone类的属性,需将System.out.println()改为System.out.println("screen为"+screen+",cpu为"+cpu+",memory为"+memory);

慕粉3598667

System.out.println();是换行的意思 Java是面向对象的,在平时的练习过程中尽量多写方法和类,方法不调用是不会执行的 你写的代码虽然在测试类里创建了一个对象但没有用对象调用该方法而且方法没有返回值也没有输出语句使用console会报错

晟弡

System.out.println();这里是没有输出任何数值的,你可以输出一下那几个成员变量。

yanrun

System.out.println()只是为了输出是换行使用,和构造方法赋值没关系。你的类里不是有screen,cpu,memory三个变量嘛,有参的构造方法的作用就是在类初始化的时候给他们3个进行赋值。

晓健

System.out.println();这里没有进行任何输出哦
随时随地看视频慕课网APP

相关分类

Java
我要回答