Java面向对象之继承extends 入门实例
一、基础概念
(一)继承的好处:
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 入门实例的更多相关文章
- Java面向对象之接口interface 入门实例
一.基础概念 (一)接口可以简单的理解为,是一个特殊的抽象类,该抽象类中的方法都是抽象的. 接口中的成员有两种:1.全局常量 2.抽象方法 定义接口用关键字interface,接口中的成员都用固定的修 ...
- Java面向对象之抽象类abstract 入门实例
一.基础概念 抽象事物,是若没有具体的信息可以描述这个事物,这个事物可以称为抽象事物. 抽象类,是不断的向上抽取而来.抽取方法声明而不确定具体的方法内容.由不同的子类来完成具体的方法内容. (一)抽象 ...
- Java面向对象之关键字super 入门实例
一.基础概念 (一)super关键字 super关键字的用法和this相似.this代表的是当前对象.super代表的是父类中内存空间. 子父类中是不会出现同名属性的情况. (二)继承中.成员变量问题 ...
- Java面向对象之关键字final 入门实例
一.基础概念 1.关键字final可以修饰类.函数.变量. 2.关键字final修饰的类不可以被继承. 3.关键字final修饰的方法不可以被覆盖. 4.关键字final修饰的变量是一个常量,只能被赋 ...
- Java面向对象之关键字static 入门实例
一.基础概念 静态关键字 static 是成员修饰符,直接用于修饰成员. (一)特点: 1.被静态修饰的成果,可以直接被类名所调用. 2.静态成员优先于对象存在. 3.静态成员随着类的加载而加载.随着 ...
- Java面向对象之关键字this 入门实例
一.基础概念 1.关键字this是指:哪个对象调用this所在的函数.this就指向当前这个对象. 2.用法: (1).this关键字可以解决:构造函数私有化问题. 注意:构造函数只能被构造函数调用, ...
- Java面向对象之继承(一)
目录 Java面向对象之继承 引言 继承的特点 语法格式 父子类的关系 继承要点 重写父类方法 继承中的构造器 继承中的super关键字 ... Java面向对象之继承 继承是面向对象的第二大特征,是 ...
- Java面向对象的继承
继承也是面向对象的又一重要特性,继承是类于类的一种关系,通俗来说狗属于动物类,那么狗这个类就继承了动物类 java中的继承是单继承的,一个类只能继承与一个父类 子类继承父类之后,子类就拥有了父类的所有 ...
- java面向对象之 继承 Inheritance
对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派生类可以从它的基类那里继承方法和实例变量,并且类可以修 ...
随机推荐
- 如何计算圆周率 Pi (π)值, 精确到小数点后 10000 位 只需要 30 多句代码!
- How to Change Master Page @ Run-time
This tip will give complete knowledge of how to change master page, render controls and accessing it ...
- 配置Linux接收H3C路由器日志
(1)H3C Device上的配置 # 开启信息中心. <Sysname> system-view [Sysname] info-center enable # 配置发送日志信息到IP地 ...
- 01 asp.net编程笔记
1.asp.net 获取当前网址url 参考地址:http://www.cnblogs.com/190196539/archive/2011/12/13/2286072.html 设当前页完整地址是: ...
- 配置环境是程序员的第一步 -- Xshell 6 免费版下载安装
Xshell 是一个强大的安全终端模拟软件,通常用来连接云主机,远程控制云主机. 很多人都不知道 Xshell 有专门为家庭和学校用户提供的免费版,只需要填个用户名和邮箱即可. 免费版链接:https ...
- 06-Location详解之精准匹配
之前nginx不是编译过吗?现在重新make install一下. 刚刚这个是我们新安装的.原始版的nginx,配置文件比较少,便于我们做调试. 试试精准匹配的概念. 匹配的是/.优先匹配这个最精准的 ...
- ArcEngine开发遇到的问题(转)
ArcEngine开发遇到的问题 https://blog.csdn.net/u013751758/article/category/6971559 转载 2018年02月11日 17:28:11 1 ...
- Flask框架 之 上下文管理前戏
偏函数 自动传递参数 import functools def index(a1,a2): return a1 + a2 # 原来的调用方式 # ret = index(1,23) # print(r ...
- LibreOJ 6000 搭配飞行员(最大流)
题解:最基础的最大流,按照主飞行员与起点建边,副飞行员与终点建边,可以同坐的主副飞行员之间建边,值均为一,然后跑一边最大流就完美了! 代码如下: #include<queue> #incl ...
- jeecms如何迭代list集合
[@cms_channel_list][#list tag_list as a ]${a.name} [/#list][/@cms_channel_list]使用[XXX_list] 参数为 tag_ ...