2. 子类对于从父类继承的哪些属性与方法是可见的?请分别写程序进行验证。
子类继承了父类的所有方法,父类中除了private标记的方法子类不可以使用之外其他的方法都可以使用。
class person {
protected String name;
private String sex;
public int age = 0;
public void setName(String _name) {
name = _name;
}
public void setSex(String _sex) {
sex = _sex;
}
public String getName(String _name) {
return name;
}
}
class student extends person {
private int id;
public void setNum(int _id) {
id = _id;
}
}
class Main {
public static void main(String[] args) {
person p = new person();
p.name = "xunxun";
System.out.println(p.sex);
System.out.println(p.age);
p.setName("anan");
p.setSex("f");
System.out.println(p.getName());
}
}
3. 什么是组合?有什么作用?请举例说明。
在一个类(person)中创建另一个类(student)的对象,这个对象作为这个类(person)的数据成员。这样定义可以在类(person)中访问类(student)的成员和方法,与继承有区别。
class person {
protected String name;
private String sex;
public int age = 0;
public void setName(String _name) {
name = _name;
}
public void setSex(String _sex) {
sex = _sex;
}
public String getName(String _name) {
return name;
}
}
class student {
private person p;
private int id;
public void setNum(int _id) {
id = _id;
}
}
4. 什么是重载?有什么作用?请构造各种重载示例。
类中定义了同名而不同参数的方法时,这些方法是重载。
class person {
private String name;
private String sex;
private int sge;
public GetAge() {
return age;
}
public GetAge(int t) {
return t;
}
}
5. 什么是覆写?有什么作用?覆写父类方法的条件有哪些?请举例说明。
子类对于父类中函数名相同、参数类型相同、返回值相同的方法进行重新定义。
当子类中需要的方法与父类不同时可以进行覆写。
class father {
private String name;
private int age;
private int sex;
public int Generation {
return 1;
}
class son extends father {
public int Generation {
return 2;
}
}



