08 Java面向对象之继承

JavaSE 基础之八

08 Java面向对象之继承

① 对象与对象之间的关系

  1. 关联关系:最弱的一种关系(学生类中包含了老师)
  2. 继承关系:比较强的一种关系,is-a,你能够用:什么是什么说通
  3. 聚合关系:比较强的关系,聚集和组合,什么是什么的一部分
  4. 实现关系:子类要去实现父接口

② 继承的语法实现

  class Animal{

  }
  class rabbit extends Animal{
      // rabbit称为子类,Animal称为父类
  }

③ 继承的特性

  1. 子类继承父类,子类可以拥有父类的所有属性(非私有的属性)和(非私有的)方法;
  2. 子类可以拥有自己的属性和方法,对父类进行了扩展;
  3. 子类也可以实现父类的方法;
  4. java的继承是单继承,一个只能有一个父类(extends)。
    注意:继承中,new 创建子类对象的时候是先创建父类对象,先取父类的属性进入内存待下一步使用
    缺点:提供了类与类之间耦合,代码之间联系非常紧密,代码独立性比较差,以后修改或替换不容易

④ object类

  1. object类是所有java类的根基类,如果在类中没有extends显示的去继承类,默认就继承object类。
  2. 创建的任何一个对象都可以使用object提供的方法。
  3. java为什么要设计每个类都继承object类?(因为object类提供了所有类公用的各种方法。)

⑤ super关键字

  在java类中,使用super关键字来表示引用父类的属性和方法,或者调用父类的构造器
  this表示当前对象,super表示父类对象
  1. super.属性、super.方法() 表示调用父类的属性和方法
  2. super(参数)

⑥ toString方法

  1. 父类的toString方法就将内存地址转化为类名+hashcode码
  2. 重写toString 优先调用子类的toString
  3. java默认规定,如果你输出的对象的变量,默认调用toString,将内存地址转化为字符串输出
  4. java输出内容的时候,输出的:变量.属性、变量.行为,默认不会执行toString

原文地址:https://www.cnblogs.com/Gavin520/p/10503919.html

时间: 2024-11-14 03:48:49

08 Java面向对象之继承的相关文章

Java面向对象的继承

继承也是面向对象的又一重要特性,继承是类于类的一种关系,通俗来说狗属于动物类,那么狗这个类就继承了动物类 java中的继承是单继承的,一个类只能继承与一个父类 子类继承父类之后,子类就拥有了父类的所有属性和方法,private的除外,优点就是可以提高代码的复用性,简单的继承实例如下: 1 public class Dog extends Animal { 2 //Dog类继承了Animal类中的所有非私有的属性和方法,可以直接使用了 3 } 使用继承还是挺简单的 方法重写 如果子类对继承父类的方

JavaSE入门学习15:Java面向对象之继承

今天我们来看Java三大面向对象特性中的继承. 一Java继承 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承可以理解为一个对象从另一个 对象获取属性的过程. 如果类A是类B的父类,而类B是类C的父类,我们也称C是A的子类,类C是从类A继承而来的.在Java中,类的继 承是单一继承,也就是说,一个子类只能拥有一个父类. 继承中最常使用的两个关键字是extends和implements.这两个关键字的使用决定了一个对象和另一个对象是否是 IS-A(是一个)关系.通过使

Java面向对象之继承

Java 中的继承规则: 1.子类继承父类所有的成员变量和成员方法,但是不能继承父类的构造方法. 2.子类虽然继承了父类的成员变量,但是子类不能直接访问父类的私有变量,可以通过getter/setter()方法进行访问 3.子类对父类构造函数的调用规则: a.子类的构造方法首先必须调用父类的构造方法. b.如果没有显示指定,子类的构造方法会默认的调用父类中的无参构造方法, 1 public class Animal { 2 public Animal() { 3 System.out.print

Java 面向对象之继承从哪来,为什么用,怎么用?

首先看一张图片: 现在有两个类,Student和Worker,为了提高复用性.只建立一份代码,让一个类和另一个类产生关系就可以了,这种关系就是:继承. 但我们发现这两个类没有继承关系,但是它们有共性的内容,我们可以找到它们的共享类型,→无论是学生还是工人,都是Person,Person都具备着name和age.即: 在代码中通过关键字 继承(extends),让学生和工人与Person产生关系 class Person { String name; int age; } class Studen

Java面向对象,继承,多态

1,继承 Java 中通过 extends 关键字可以继承一个类,implements可以继承多个接口.继承允许创建等级层次的类. 继承的机制提高了代码的复用性,让类与类之间产生了关系,有了这个关系,才有了多态的特性. 注:Java支持单继承,但是可以多层继承. 子类可以拥有父类的非private的方法和属性,子类可以继承父类的方法,也可以重写父类的方法,还可以对父进行拓展. 增加了类之间的联系,即提高了耦合. 一般格式为: class 父类 { } class 子类 extends 父类 {

Java面向对象练习题继承之点和矩形

按要求编写一个Java应用程序: (1)编写一个矩形类Rect,包含: 两个protected属性:矩形的宽width:矩形的高height. 两个构造方法: 1.一个带有两个参数的构造方法,用于将width和height属性初化: 2.一个不带参数的构造方法,将矩形初始化为宽和高都为10. 两个方法: 求矩形面积的方法area() 求矩形周长的方法perimeter() (2)通过继承Rect类编写一个具有确定位置的矩形类PlainRect,其确定位置用 矩形的左上角坐标来标识,包含: 添加两

java面向对象(继承)

一.继承的概念 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为. 在Java中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有类被称作父类,子类会自动拥有父类所有可继承的属性和方法 二.类继承的格式 通过 extends 关键字可以申明一个类是从另外一个类继承而来 class 父类 { } class 子类 extends 父类 { } /* * 定义员工类Employee */ c

Java面向对象练习题继承之人种

//People类 package 继承; public class People { private String name; private double height; private double weight; public String getName() { return name; } public void setName(String name) { this.name = name; } public double getHeight() { return height;

Java面向对象练习题继承之物种

21.编写一个Java应用程序,该程序包括3个类:Monkey类.People类和主类 E.要求: (1) Monkey类中有个构造方法:Monkey (String s),并且有个public void speak() 方法,在speak方法中输出“咿咿呀呀......”的信息. (2)People类是Monkey类的子类,在People类中重写方法speak(),在speak方法 中输出“小样的,不错嘛!会说话了!”的信息. (3)在People类中新增方法void think(),在thi