JavaSE基础语法--傻瓜笔记--1023(第三章:面向对象3)

2022-07-28,,,,

第三章:面向对象3

1.继承

①继承

:是面向对象程序设计中不可缺少的设计思想,是实现代码可重用的根本,是提高代码可扩充性属性的主要途径。

关键字:extends

Java不支持多继承,只能有一个父类。

继承是新的类吸收已有的类,并扩充新的能力。

子类可以继承父类所有的非私有的属性和非私有的方法。但是如果不同包,那默认的也不行。

c是b的子类(派生类),b是c的父类(基类)

传递性:c继承b,b继承a,那么c就拥有a和b的所有的非私有的属性和非私有的方法。

Object:如果一个类没有继承任何一个类,那么JVM就会默认给该类继承一个Object类。

:如果c类创建一个对象,实际上就是创建了4个对象。

②为何要使用继承?

因为继承与真实世界类似,符合is-a关系的设计,使用继承。

③代码:

Animal类

public class Animal extends Object {
    private String name;
    private int age;

    public void eat(){
        System.out.println("动物都会吃");
    }

    public Animal(){

    }

    public void setName(String name){
        this.name = name;
    }
    public String getName(){
        return this.name;
    }

    public void setAge(int age){
        this.age = age;
    }

    public int getAge() {
        return this.age;
    }
}

Dog类:

public class Dog extends Animal {
    public static void main(String[] args) {
        Dog dog1 = new Dog();
        dog1.setName("旺财");
        System.out.println(dog1.getName());
        dog1.setAge(4);
        System.out.println(dog1.getAge());
        dog1.eat();

        Dog dog2 = new Dog();
        dog2.setName("小黑");
        System.out.println(dog2.getName());
        dog2.setAge(3);
        System.out.println(dog2.getAge());
        dog2.eat();
    }

    public void fly(){
        System.out.println("有的狗会飞");
    }
}

Xiaotianquan类:

//继承的好处:代码可重用,提高代码可扩展性,新的类吸收已有的类,并扩展新的能力
//java是单继承,
//符合is-a关系的设计,使用继承
//继承传递  c继承b,b继承a,那么c会拥有b和a的全部的非私有的属性和私有的方法,不同包的时候,默认的也不行
//c是b的子类(派生类),b是c的父类(基类)
//如果一个类没有继承任何一个类,那么JVM会默认继承Object类;
//所以如果上面的c类创建了一个对象,那么实际上是创建了4个对象;
public class Xiaotianquan extends Dog {
    public static void main(String[] args) {
        Xiaotianquan x = new Xiaotianquan();
        x.fly();
        x.eat();
        x.study();
    }

    public void study(){
        System.out.println("会学习");
    }
}

若有错误,欢迎私信指正。

本文地址:https://blog.csdn.net/weixin_44734518/article/details/109252285

《JavaSE基础语法--傻瓜笔记--1023(第三章:面向对象3).doc》

下载本文的Word格式文档,以方便收藏与打印。