public class Person {//这里是定义一个父类。
private String name;
private int age;
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;
}
public Person() {
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void eat(){
System.out.println("父类吃饭");
}
}
子类:
public class Student extends Person {
//第一步 定义类的成员属性
private int id;
//第二部 定义setget方法
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
//第三步定义构造方法 有参无参.因为父类中有了name和age这个属性所以子类继承了person后自动有了这两个成员属性。因为父类定义了构造方法。所以子类无需定义 super(name,age
//)这是调用了父类的有参。。。实在不明白就记住。多写几遍
public Student() {
}
public Student(int id,String name,int age) {
super(name,age);
this.id = id;
}
//第四步。因为学生有自己的独有方法,所以首先定义一个自己的方法
public void study(){
System.out.println("我喜欢java");
}
//第四部:因为每个人吃饭的方法都不一样。。所以你需要重写父类的方法。重写方法的时候注意。于父类的方法定义完全一致
public void eat(){
super.eat();//如果你还想要调用父类的方法,那就这样调用。super.方法名();
System.out.println("我喜欢吃果冻");
}
//这就完成了子类的定义 接下来是主方法
}
public class StudentDemo {
public static void main(String[] args) {
Student s=new Student();//实例化一个对象s.这里是调用的有参构造 这是第一种赋值方法
s.setName("小白");//设置name
s.setAge(20);//设置age
s.setId(1020);//设置id
//获取值并且输出
System.out.println(s.getName()+".."+s.getAge()+"..."+s.getId());
//第二种赋值方法 直接用构造函数初始化
Student ss=new Student(1030,"小黄",1030);//注意这里传的参数类型要与你的构造函数一致。
System.out.println(ss.getName()+".."+ss.getAge()+"..."+ss.getId());//获取值
}
} |
|