领养流浪猫问题是学习面向对象中构造方法的入门石。
抛开问题,首先了解构造方法:
概念:给对象的数据等属性进行初始化;
它是不同与普通方法的,其两者区别(构造方法特征)在于:
(1)构造方法的名称与所在类的名称必须相同。例如Cat类的构造方法是
Cat(){
}
(2)构造方法禁止定义返回值类型,即不使用void作为返回值类型,例如
public Cat(){
}
Cat前如若加void:
public void Cat(){
}
则变为普通方法;
(3)构造方法不需要return语句。所有构造方法都用于返回所在类的对象,那么也就可以省略了。
另外(4)构造方法只能在对象实例化时调用;
(5)一个类中可以有多个构造方法。
构造方法类型:无参构造和有参构造;
无参:
class Cat(){
System.out.println("我叫无参构造方法。");
}
有参:
class Cat(String name){ /*括号里可以添加多个参数,用逗号分隔开*/
System.out.println("我叫有参构造方法。");
}
用的时候是要在实例化时传入参数;
Cat a = new Cat("小喵");
注意:当没有指定的构造方法时,系统会自动添加无参的构造方法;
当有指定的构造方法时,无论是有参还是无参,都不会自动添加无参的构造方法;
了解以上后,源码如下:
class Cat{
//定义猫类
String name;
String sex;
String colors;
double age;
String city;
//成员变量(属性)
public Cat(String name,String sex,String colors,double age,String city){
//构造方法
this.name = name;
this.sex = sex;
this.colors = colors;
this.age = age;
this.city = city;
//this.访问成员变量
}
public String getName(){
&n