不用一个个属性赋值的方法:
知道了类的创建与使用,但是每次赋值都是一个个调用,我们可以用构造器使得方法简单一点,不用一个个调用属性赋值,直接传参就OK了;
点击类名然后ctrl可以查看构造器
public yanxiao(int a,String b,double c){
age=a;
name=b;
height=c;
}
package javatest;
public class yanxiao {
int age; //定义属性
String name;
double height;
public void sgao(){//创建类方法
System.out.println(height);
}
//创建构造器
public yanxiao(int a,String b,double c){
age=a;
name=b;
height=c;
}
}
package javatest;
public class test {
public static void main(String[] args){ //程序的入口
yanxiao YX=new yanxiao(18,"yanxiao",180); //运用了构造器,直接传参,
System.out.println(YX.age);//输出类的属性
System.out.println(YX.name);
YX.sgao();//调用方法
}
}
收获:知道了构造器的用法,方便更好的使用,注意构造器的传参,但是这里还用一个问题,就是传参会出现问题(传错掉),这怎么办喃,我们直接在构造器的这里加上属性的名字
主要代码:
public yanxiao(int age,String name,double height){
this.age=age;
this.name=name;
this.height=height;
}
#Stinrg 的S为大写
this.age指上面类的age
空构造器是必要的;因为没有了空的构造器,而且你创建了构造器,系统就不会分配构造器给你,就会报错。
升级的构造器:
package javatest;
public class yanxiao {
int age; //定义属性
String name;
double height;
public void sgao(){//创建类方法
System.out.println(height);
}
//创建空构造器
public yanxiao() {
}
public yanxiao(int age, String name, double height) {
this.age = age;
this.name = name;
this.height = height;
}
}
package javatest;
public class test {
public static void main(String[] args){ //程序的入口
yanxiao YX=new yanxiao(18,"yanxiao",180); //运用了构造器,直接传参,
System.out.println(YX.age);//输出类的属性
System.out.println(YX.name);
YX.sgao();//调用方法
}
}
构造器快捷键:
AIt+insert-->构造器----->选择需要构造的属性就OK了