一、基础概念

  (一)继承的好处:

     1.继承:提高了代码的复用性。

     2.让类与类之间产生了关系,给多态这个特征提供了前提。

  (二)继承的种类:

     1.单继承:一个类只能有一个父类。

     2.多继承:一个类可以有多个父类。

        3.java支持单继承,不直接支持多继承。(因为多继承调用的不稳定性)

  (三)继承使用时候:

     1.当事物之间存在着所属关系时。可以通过继承来体现这个关系。

      如:XXX是YYY的一种。XXX extends YYY

     2.父类中私有的部分,子类对象是无法直接访问的。子类对象通过setXXX和getXXX进行访问。

二、实例代码

 //将student类和worker类共享的代码抽取到Person类中,形成一个父类Person。
class Person
{
//父类中私有的部分,子类对象通过setXXX和getXXX进行访问。
private String name;
int age; public void setName(String name)
{
this.name = name;
}
public String getName()
{
return this.name;
}
void sleep()
{
System.out.println("Name: "+name+",age: "+age+" sleep ......");
}
} //student类继承了Person类的属性和方法(通过关键字extends继承)
class Student extends Person
{
//可以拥有自己的方法study
void study()
{
System.out.println("name: "+this.getName()+",age: "+age+" study ......");
}
} //worker类继承了Person类的属性和方法
class Worker extends Person
{
//可以拥有自己的方法work
void work()
{
System.out.println("name: "+this.getName()+",age: "+age+" work ......");
}
}
class ExtendsDemo
{
public static void main(String[] args)
{
//创建一个实例p,赋给name和age,并输出sleep方法和study方法。
Student p = new Student();
p.setName("xiaoming");
p.age = ;
p.sleep();
p.study();
//创建一个实例s,赋给name和age,并输出sleep方法和work方法。
Worker s = new Worker();
s.setName("laoli");
s.age = ;
s.sleep();
s.work();
}
}

三、代码运行

  

Java面向对象之继承extends 入门实例的更多相关文章

  1. Java面向对象之接口interface 入门实例

    一.基础概念 (一)接口可以简单的理解为,是一个特殊的抽象类,该抽象类中的方法都是抽象的. 接口中的成员有两种:1.全局常量 2.抽象方法 定义接口用关键字interface,接口中的成员都用固定的修 ...

  2. Java面向对象之抽象类abstract 入门实例

    一.基础概念 抽象事物,是若没有具体的信息可以描述这个事物,这个事物可以称为抽象事物. 抽象类,是不断的向上抽取而来.抽取方法声明而不确定具体的方法内容.由不同的子类来完成具体的方法内容. (一)抽象 ...

  3. Java面向对象之关键字super 入门实例

    一.基础概念 (一)super关键字 super关键字的用法和this相似.this代表的是当前对象.super代表的是父类中内存空间. 子父类中是不会出现同名属性的情况. (二)继承中.成员变量问题 ...

  4. Java面向对象之关键字final 入门实例

    一.基础概念 1.关键字final可以修饰类.函数.变量. 2.关键字final修饰的类不可以被继承. 3.关键字final修饰的方法不可以被覆盖. 4.关键字final修饰的变量是一个常量,只能被赋 ...

  5. Java面向对象之关键字static 入门实例

    一.基础概念 静态关键字 static 是成员修饰符,直接用于修饰成员. (一)特点: 1.被静态修饰的成果,可以直接被类名所调用. 2.静态成员优先于对象存在. 3.静态成员随着类的加载而加载.随着 ...

  6. Java面向对象之关键字this 入门实例

    一.基础概念 1.关键字this是指:哪个对象调用this所在的函数.this就指向当前这个对象. 2.用法: (1).this关键字可以解决:构造函数私有化问题. 注意:构造函数只能被构造函数调用, ...

  7. Java面向对象之继承(一)

    目录 Java面向对象之继承 引言 继承的特点 语法格式 父子类的关系 继承要点 重写父类方法 继承中的构造器 继承中的super关键字 ... Java面向对象之继承 继承是面向对象的第二大特征,是 ...

  8. Java面向对象的继承

    继承也是面向对象的又一重要特性,继承是类于类的一种关系,通俗来说狗属于动物类,那么狗这个类就继承了动物类 java中的继承是单继承的,一个类只能继承与一个父类 子类继承父类之后,子类就拥有了父类的所有 ...

  9. java面向对象之 继承 Inheritance

    对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派生类可以从它的基类那里继承方法和实例变量,并且类可以修 ...

随机推荐

  1. Halcon学习之文本操作

    1.          新建文本文件open_file ( : : FileName, FileType : FileHandle ) 创建 ( 'output' or 'append' )或者打开  ...

  2. python学习——练习题(5)

    """ 题目:输入三个整数x,y,z,请把这三个数由小到大输出. """ def inputInt(i): ""&quo ...

  3. Oracle11gr2_ADG管理之switchover实战

    . 环境 db_primary db_stanby 备注 db版本 11.2.0.4.0 11.2.0.4.0 os版本 centos 6.4 centos 6.4 db_unique_name ne ...

  4. eth0 no such device(reload)

    转载自:http://blog.chinaunix.net/uid-25554408-id-292638.html 今天我在vmware里安装了虚拟机,安装虚拟机就想安装vmware tools(这个 ...

  5. laravel 中的Gates,以及修改模型

    Gates 是一个用于判断用户是否有权进行某项操作的闭包,通常使用Gate 门面定义在 App\Providers\AuthServiceProvider类中.Gates 总是接收用户实例作为第一个参 ...

  6. Oracle树查询,start with connect by prior 递归查询用法(转载)

    本人觉得这个写的真不错,实用性强,就转载过来了 这个子句主要是用于B树结构类型的数据递归查询,给出B树结构类型中的任意一个结点,遍历其最终父结点或者子结点. 先看原始数据: 1 create tabl ...

  7. 数字图像处理实验(9):PROJECT 04-05,Correlation in the Frequency Domain 标签: 图像处理MATLAB 2017-05-25 10:14

    实验要求: Objective: To know how to implement correlation of 2 functions in the frequency domain and, us ...

  8. PHP文件的引用

    require "文件名" 或 include("文件名") 区别:若所包含文件出现错误,include()产生一个警告,require会导致程序终止

  9. Django-Web框架之Hello Django!

    1.首先我们配置guest目录下面的settings.py问,将我们的sign应用添加到项目中.如下图所示: 2.我们通过地址栏:http://127.0.0.1:8001/index/访问Djang ...

  10. 基于Ajax的文件上传使用FileInput插件(使用谷歌翻译作者的原文,大致意思是对的,自己把握)

    bootstrap-fileinput 说明文档:http://plugins.krajee.com/file-input 有许多人希望学习使用bootstrap-fileinput jQuery插件 ...