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
对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类).派生类可以从它的基类那里继承方法和实例变量,并且类可以修 ...
随机推荐
- 使用JAVA爬取博客里面的所有文章
主要思路: 1.找到列表页. 2.找到文章页. 3.用一个队列来保存将要爬取的网页,爬取队头的url,如果队列非空,则一直爬取. 4.如果是列表页,则抽取里面所有的文章url进队:如果是文章页,则直接 ...
- MapReduce文件切分个数计算方法
转自:http://www.crazyant.net/1423.html Hadoop的MapReduce计算的第一个阶段是InputFormat处理的,先将文件进行切分,然后将每个切分传递给每个Ma ...
- Eclipse 代码风格配置
代码风格配置:
- Mac mysql-忘记数据库密码
第一步: 关闭mysql服务:苹果->系统偏好设置最下边点mysql 在弹出页面中关闭mysql服务(点击stop mysql server) 第二步: 进入终端输入:cd /usr/local ...
- 算法描述》LCA两三事(蒟蒻向)
LCA是图论中常用的解决树形结构子问题的工具,这一问题一般需要用一个简短的子函数直接解决,但是这对于广大蒟蒻们仍然是一个不小的问题. LCA是指在树形结构中两点的最近公共祖先,对于这个问题,直接向上找 ...
- SpringMVC Controller 的简单应用
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- 面试题:hibernate 有用
1. Hibernate的工作流程? 答案: 1.通过Configuration对象读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory对象 3.打开session 4.创建事 ...
- postfix配置积累(不断的积累)
postfix 配置 1.mail_name 默认是Postfix.在收件人信头可以查看,如果不想让别人知道你是用postfix发的,则可以改成其它名字,如:postconf -e mail_name ...
- c# 常规验证基类
using System;using System.Collections.Generic;using System.Linq;using System.Text.RegularExpressions ...
- js精度(摘)
Math.formatFloat = function (f, digit) { var m = Math.pow(10, digit); return parseInt(f * m, 1 ...