类Test代码如下:class Test{string name;int age; Test(String num){ name=num; } } 当执行Test test=new Test(0后,aqe的值是:
时间: 2024-02-13 12:06:29 浏览: 8
这段代码有一些错误,应该是这样的:
```
class Test {
String name;
int age;
Test(String num) {
name = num;
}
}
```
在这种情况下,当执行`Test test = new Test("0");`时,`test`对象的`name`属性将被设置为字符串"0",而`age`属性将保持默认值0。因为在构造函数中只为`name`属性赋值了,而没有为`age`属性赋值。
相关问题
package java111222; public class Animal{ public String name;//名字 protected int age;//年龄 public Animal() {} public Animal(String name,int age) { this.name=name; this.age=age; } public void eat() { System.out.println("animal:"+name+"eating"); } public String getInfo() { return "我是"+name+",今年"+age+"岁了."; } class Cat extends Animal{ public String breed; public Cat() { } public Cat(String name,int age,String breed) { super(name,age); this.breed = breed; } public void eat() { System.out.println(this.breed+super.name+"正在吃鱼"); } public void eat(int num) { System.out.println(this.breed+super.name+"吃了"+num+"条鱼"); } } } public class CatTest { public static void main(String[] args) { Cat cat1 = new Cat("kate",2,"蓝猫"); // TODO 自动生成的方法存根 cat1.eat(); cat1.eat(2); } }
这段代码有几个问题:
1. Animal类和Cat类的定义应该在两个不同的文件中,而不是写在同一个文件中。
2. Animal类中的eat()方法的输出语句中,应该用加号(+)连接字符串和变量,而不是直接用空格连接。
3. Cat类中的eat()方法的输出语句中,应该用加号(+)连接字符串和变量,而不是直接用空格连接。另外,应该在super后面加上".",表示调用父类的属性。
4. CatTest类中的main()方法中,应该在Cat类的定义之前导入Animal类。
修改后的代码如下:
Animal类:
package java111222;
public class Animal {
public String name;//名字
protected int age;//年龄
public Animal() {}
public Animal(String name,int age) {
this.name=name;
this.age=age;
}
public void eat() {
System.out.println("animal:" + name + " eating");
}
public String getInfo() {
return "我是" + name + ",今年" + age + "岁了.";
}
}
Cat类:
package java111222;
public class Cat extends Animal{
public String breed;
public Cat() { }
public Cat(String name,int age,String breed) {
super(name,age);
this.breed = breed;
}
public void eat() {
System.out.println(this.breed + " " + super.name + "正在吃鱼");
}
public void eat(int num) {
System.out.println(this.breed + " " + super.name + "吃了" + num + "条鱼");
}
}
CatTest类:
package java111222;
public class CatTest {
public static void main(String[] args) {
Cat cat1 = new Cat("kate",2,"蓝猫");
cat1.eat();
cat1.eat(2);
}
}
用 Java 写一个程序 (1)建立教师类 Tcacher ,定义三个屋性:教师编号(num)姓名 (name) 和年龄 (age) ; (2)定义方法 setName 和 aetName,基中satName方法对姓名赋值,getName返回 姓名。 (3)给出 Teacher 类的构造方法,要求初始化一条记录(教师编号、姓名、年龄)。 (4)写一个测试类 Test,初始化教师(“9001”“李明”,29)并输出该教师的编号、姓名和年龄
好的,以下是用Java写一个程序实现以上要求的代码:
Teacher类代码:
```java
public class Teacher {
private int num; // 教师编号
private String name; // 姓名
private int age; // 年龄
// 构造方法
public Teacher(int num, String name, int age) {
this.num = num;
this.name = name;
this.age = age;
}
// Getter和Setter方法
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
// 定义setName和getName方法
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
```
Test类代码:
```java
public class Test {
public static void main(String[] args) {
// 初始化教师
Teacher teacher = new Teacher(9001, "李明", 29);
// 输出教师编号、姓名和年龄
System.out.println("教师编号:" + teacher.getNum());
System.out.println("教师姓名:" + teacher.getName());
System.out.println("教师年龄:" + teacher.getAge());
}
}
```
在上面的代码中,我们定义了一个Teacher类,并实现了定义三个属性、定义setName和getName方法以及构造方法的要求。我们还编写了一个Test类,初始化了一个教师对象并输出了教师的编号、姓名和年龄。