



Person类
  - package com.ITheima.d7_extends;
- 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;
- }
- }
复制代码 View CodeStudent类继承Person类
  - package com.ITheima.d7_extends;
- public class Student extends Person{
- public void study(){
- System.out.println(getName()+"好好学习");
- }
- }
复制代码 View CodeTeacher类继承Person类
  - package com.ITheima.d7_extends;
- public class Teacher extends Person {
- public void teach() {
- System.out.println(getName()+"开始教导学生");
- }
- }
复制代码 View Code
案例

Person1类
  - package com.ITheima.d8_extends;
- public class Person1 {
- private String name;
- private int age;
- public void watch(){
- System.out.println("查看课表");
- }
- //无参构造器
- public Person1() {
- }
- //有参构造器
- public Person1(String name, int age){
- this.name=name;
- this.age=age;
- }
- //set get
- 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;
- }
- }
复制代码 View CodeStudent1类
  - package com.ITheima.d8_extends;
- public class Student1 extends Person1 {
- private String stayClass;
- public void write(){
- System.out.println("填写听课反馈");
- }
- public String getStayClass() {
- return stayClass;
- }
- public void setStayClass(String stayClass) {
- this.stayClass = stayClass;
- }
- }
复制代码 View CodeTeacher1类
  - package com.ITheima.d8_extends;
- public class Teacher1 extends Person1 {
- private String place;
- public void sendMsg(){
- System.out.println("发布问题");
- }
- public String getPlace() {
- return place;
- }
- public void setPlace(String place) {
- this.place = place;
- }
- }
复制代码 View CodeTestDemo11类
  - package com.ITheima.d8_extends;
- import com.ITheima.d7_extends.Teacher;
- public class TestDemo11 {
- public static void main(String[] args) {
- Student1 s=new Student1();
- s.setName("TOM");//继承父类
- s.setAge(11);//继承父类
- s.setStayClass("梅花");
- s.write();
- Teacher1 t=new Teacher1();
- t.setName("Lili");//继承父类
- t.setAge(49);//继承父类
- t.setPlace("嘎嘎");
- t.sendMsg();
- }
- }
复制代码 View Code






方法重写

@Override重写注释

Phone父类
  - package com.ITheima.d8_extends;
- public class Phone {
- public void call(){
- System.out.println("开始打电话");
- }
- public void sendMessage(){
- System.out.println("发送短信开始");
- }
- }
复制代码 View CodeNewPhone 子类
 [code]package com.ITheima.d8_extends;public class NewPhone extends Phone{ /** * 方法重写 * @Override 放在重写后的方法上,作为重写是否正确的校验注解 * 加上该注解后 如果重写错误,编译阶段会出现错误提示 * (建议重写方法都加@Override注解,代码安全 ,优雅!) * 方法重写注意事项和要求 * 1 重写方法的名称,形参列表与被重写的方法是的名称和参数列表一致 * 2 私有方法不能被重写 * 3 这类重写父类方法时 访问权限必须大于或等于父类(暂时了解:缺省 |