JAVA面向对象-----继承

类和类之间的常见关系。

既然继承是描述类和类之间的关系,就需要先来了解类和类之间的常见关系

现实生活的整体与部分
举例说明

现实生活

学生 是人
狗 是动物
球队 包含 球员 整体与部分的关系,部分可以删除和增加
笔记本包含 cpu 整体与部分的关系,部分不可以删除和增加
航母编队 包含(航母 护卫舰 驱逐舰 舰载机 核潜艇)

java中的类关系

1is a 关系 (学生是人)
2has a 整体与部分

class Person{
    String name;
    int age;
    Address add;

    Person(){

    }
    Person(String name,int age,Address add){

        this.name=name;
        this.age=age;
        this.add=add;

    }

    void speak(){
        System.out.println("姓名:"+name+" 年龄:"+age+" "+add.print());
    }
}
class Address{
    String country;
    String city;
    String street;

    Address(){

    }
    Address(String country,String city,String street){
        this.country=country;
        this.city=city;
        this.street=street;
    }

    String print(){
        return "地址:"+country+" "+"城市:"+city+"  街道;"+street;
    }
}
class Demo3{

    public static void main(String[] args){

        Address add=new Address("中国","广州","6路");
        Person p=new Person("jack",27,add);
        p.speak();


        System.out.println();
        }
}

继承

1:描述一个学生类

姓名年龄学号属性,学习的方法

2:描述一个工人类

姓名年龄工号属性,工作的方法

3:描述一个人类
1:姓名年龄属性,说话的方法。

发现学生类和人类天生有着联系,学生和工人都是人。所以人有的属性和行为学生和工人都会有。出现类代码重复

class Person {
    String name;
    int age;

    // 静态变量(类变量)对象和对象之间的代码重复使用静态变量
    static String country = "CN";

    Person() {

    }

    void speak() {
        System.out.println(name + ":哈哈,我是人!!!");
    }

}

// 让学生类和人类产生关系,发现学生is a 人,就可以使用继承
class Student {

    String name;
    int age;

    Student() {

    }

    void study() {
        System.out.println("姓名:" + name + "年纪:" + age + ":好好学习");
    }
}

class Worker {
    String name;
    int age;

    void work() {
        System.out.println(name + ":好好工作,好好挣钱。");
    }

}

class Demo1 {

    public static void main(String[] args) {
        Student s = new Student();
        s.name = "jack";
        s.age = 20;
        s.study();

        Worker w = new Worker();
        w.name = "rose";

        w.work();
    }
}
问题:
    1:如果没有继承,出现类和类的关系无法描述
    2:如果没有继承,类和类之间有关系会出现类和类的描述代码的重复。

继承特点

描述类和类之间的关系
降低类和类之间的重复代码
降低对象和对象之间的代码重复使用静态变量
降低类和类之间的代码重复使用就继承


【正在看本人博客的这位童鞋,我看你气度不凡,谈吐间隐隐有王者之气,日后必有一番作为!下面有个“顶”字,你就顺手把它点了吧(要先登录CSDN账号哦 )】


—–乐于分享,共同进步!
—–更多文章请看:http://blog.csdn.net/duruiqi_fx


原文地址:https://www.cnblogs.com/hainange/p/6153863.html