Student.java 是子类
package com.company;
/**
* Created by dllo on 17/5/8.
*/
//继承的关键字extends
public class Student extends Person {
// private String name;
//private :同类同包
//public :都可以
// private String sex;
// private int age;
double score;
String name;
public Student() {
// super(); 写不写都可以 系统默认给我们添加一个super
}
//注意: 当属性权限为private时,子类依然能继承
//只不过没有权限直接访问
//关键字
//static - 用 static 声明的方法,需要由类名去调用 并且方法内不能使用this/super
//final - 可修饰: 1) 变量 -> 只读,不能改变
//2) 方法 -> 不能被子类重写
// 3) 类 -> 不能被继承
//@Override - 声明复写/重写的方法,可加可不加 当添加了系统会自动校验是否满足复写要求
// 更多的使用场景是传递给使用者(如同事)信息,告知这是一个复写的方法
public Student(String name, String sex, double score, int age) {
//this - 先找自己的,没有的再找继承而来的父类的
// this.name = name;
//super - 直接去找从父类继承的部分
// super.name = name;
// this.age = age;
// this.sex = sex;
//调用继承来的父类的构造方法
//用super去调用构造方法,必须写在第一句
super(name, sex, age);
this.score = score;
}
public void setScore(double score) {
this.score = score;
}
public double getScore() {
return score;
}
public void setInfo(){
//super不光可以调用属性,还可以调用方法
super.setInfo();
System.out.println(score);
// System.out.println(name);
// System.out.println(age);
// System.out.println(sex);
}
//重载是发生在一个类里 重写是指方法内容的重写 根据自身的需求去考虑写方法的内容
}
Person.java 父类
package com.company;
/**
* Created by dllo on 17/5/8.
*/
public class Person {
String name;
String sex;
int age;
public Person() {
// super(); 写不写都可以 系统默认给我们添加一个super
super();
}
public Person(String name, String sex, int age) {
// super(); 写不写都可以 系统默认给我们添加一个super
super();
this.name = name;
this.sex = sex;
this.age = age;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getSex() {
return sex;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void setInfo() {
System.out.println(name);
System.out.println(age);
System.out.println(sex);
}
}
Main.java 调用方法
package com.company;
public class Main {
public static void main(String[] args) {
Student stu = new Student("貂蝉", "女", 234, 23);
stu.setInfo();
}
}