• 继承的实现与限制


    ------------siwuxie095

       

       

       

       

       

    继承的实现:

       

    1)继承:扩展父类的功能

       

    (2)Java中使用 extends 关键字完成继承

       

       

       

    代码:

       

    package com.siwuxie095.extendsdemo;

       

    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 void tell() {

    System.out.println("姓名:"+getName()+" 年龄:"+getAge());

    }

     

     

    }

       

    //使用继承,减少代码冗余,提高效率

    class Student extends Person{

    private int score;

       

    public int getScore() {

    return score;

    }

       

    public void setScore(int score) {

    this.score = score;

    }

     

    public void say() {

    System.out.println("成绩:"+getScore());

    }

     

    }

       

    public class ExtendsDemo01 {

       

    public static void main(String[] args) {

    Student s=new Student();

    //子类调用父类中的方法

    s.setName("张三");

    s.setAge(20);

    s.setScore(96);

    s.tell();

    s.say();

    }

       

    }

       

       

    运行一览:

       

       

       

       

       

       

    继承的限制:

       

    1)Java中只允许单继承

       

    2)子类不能直接访问父类的私有成员

       

       

    代码:

       

    package com.siwuxie095.extendsdemo;

       

    class People{

    private int age;

       

    public int getAge() {

    return age;

    }

       

    public void setAge(int age) {

    this.age = age;

    }

     

    }

       

    //单继承

    class Worker extends People{

    public void say() {

    //不能直接访问父类的私有成员

    //System.out.println(age);

    }

    }

       

    //单继承,或者也继承自 People 也可以

    //不同同时继承自 People Worker

    // 不能多继承,但可以多层继承

    class PetWorker extends Worker{

    public void tell() {

    System.out.println(getAge());

    }

    }

       

    public class ExtendsDemo02 {

       

    public static void main(String[] args) {

    PetWorker pw=new PetWorker();

    pw.setAge(20);

    pw.tell();

    }

       

    }

       

       

    运行一览:

       

       

       

       

       

       

    【made by siwuxie095】

  • 相关阅读:
    Codeforces VK Cup 2015 A.And Yet Another Bracket Sequence(后缀数组+平衡树+字符串)
    Tensorflow框架初尝试————搭建卷积神经网络做MNIST问题
    TopCoder代码格式模板
    TopCoder[SRM513 DIV 1]:PerfectMemory(500)
    TopCoder[SRM513 DIV 1]:Reflections(1000)
    LCT模板
    FWT模板
    BZOJ2752:[HAOI2012]高速公路(road)
    BZOJ3332:旧试题
    BZOJ3171:[TJOI2013]循环格
  • 原文地址:https://www.cnblogs.com/siwuxie095/p/6566983.html
Copyright © 2020-2023  润新知