构造方法
构造方法是一种特殊的方法,其主要功能是用来创建对象时初始化对象,即为对象成员变量赋初始值。
构造方法与类名相同,可重载多个不同的构造方法。
package com.zjm.www.day10; /**+ * * 动物练习 * @author Zjm * */ public class Ex_animal { public static void main(String[] args) { // TODO Auto-generated method stub Animal an1 = new Animal("兔子","草",5); Animal an2 = new Animal(); Animal an3 = new Animal(an1,an2); an2.all(an3); } } class Animal{ String name; String eat; int weight; public Animal() { this.name = name; this.eat = "猪蹄"; this.weight = 12; } public Animal(Animal a,Animal b) { this.name = b.name; this.eat = a.eat; this.weight = b.weight; } public Animal(String name,String eat,int weight) { this.name = name; this.eat = eat; this.weight = weight; } public Animal(String name,int weight) { this.name = name; this.weight = weight; } public void eat1() { System.out.println("这个动物喜欢吃" + this.eat); } public void run() { System.out.println("这个动物会跑"); } public void all(Animal an) { System.out.println("这是一只 " + this.name + ",它喜欢吃 " + an.eat + ",它重 " + an.weight +" 斤"); } }
package com.lenovo.www.day10; /** * 测试类 * * @author lenovo64 *这只小狗是小白,白色正在和那只小猫叫做小黑,黑色在打架 *获胜的动物是黑色 */ public class Test { public static void main(String[] args) { Animal dog = new Animal("小黑", "小猫", "黑色"); Animal cat = new Animal("小白", "小狗", "白色"); String s = dog.play(cat, dog); System.out.println("获胜的动物是" + s); } } class Animal { String name; String kind; int age; String color; long animalID; String date; public Animal(String name, String kind) { this.name = name; this.kind = kind; } public Animal(String name, String color, String kind) { this.name = name; this.color = color; this.kind = kind; } public Animal(String name, int age, long animalID) { this.age = age; this.animalID = animalID; } public String play(Animal dog, Animal cat) { System.out.println("这只" + dog.color + "是" + dog.name + "," + dog.kind + ",正在和那只" + cat.color + "叫做" + cat.name + "," + cat.kind + ",在打架"); return cat.kind; } }