人类家族类(类继承与接口实现)===API

祖先类Animal.java

public class Animal{

public void eat(){

System.out.println("动物需要吃东西");

}

public void drink(){

System.out.println("动物需要喝水");

}

public void needsleep(){

System.out.println("动物需要睡觉");

}

}

第二祖先类继承祖先类Human .java

public class Human extends Animal{

public void eat(){

System.out.println("人类需要吃饭");

}

public void drink(){

System.out.println("人类需要喝水");

}

public void speak(){

System.out.println("人类需要说话");

}

public void needsleep(){

System.out.println("人类需要睡觉");

}

}

两接口类(外加功能)

public interface Driving {    public void driving();   }

public interface Kaoshi{     public void kaoshi();    }

男人类继承人类和实现另两接口功能、自己增加的功能方法(多态)Man.java

public class Man extends Human implements Driving,Kaoshi{

public void driving(){

System.out.println("男人要学会开车");

}

public void kaoshi(){

System.out.println("男人需要考试");

}

public void joinArmy(){

System.out.println("男人要参军");

}

}

女人类继承人类和自己增加的功能方法(多态)Woman .java

public class Woman extends Human {

public void selectBeauty(){

System.out.println("女人要选美");

}

}

TestHuman.java

import java.util.ArrayList;

import java.util.Iterator;

public class TestHuman{

public static void main(String[] args){

Man m =new Man();

m.eat();

m.driving();

m.joinArmy();

m.kaoshi();

Woman w=new Woman();

w.needsleep();

w.selectBeauty();

//字面含义: instanceof==的实例 (m instanceof Animal)指Animal的实例为m

//instanceof:左类是否为右类的子类(是否属于右类家族)

if( m instanceof Animal)

System.out.println("男人属于动物");

else

System.out.println("男人不属于动物");

if( w instanceof Animal)

System.out.println("女人属于动物");

else

System.out.println("女人不属于动物");

//类从属于类家族

ArrayList alt=new ArrayList();

alt.add("张三");

alt.add("李四");

alt.add("王老五");

Iterator it=alt.iterator();//返回一迭代器

while(it.hasNext()){

System.out.println(it.next());

}

}

}

时间: 2024-11-09 06:27:11

人类家族类(类继承与接口实现)===API的相关文章

黑马程序员---java基础-Java类 继承&抽象&接口

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.继承 继承是所有OOP语言不可缺少的部分,在java中使用extends关键字来表示继承关系.当创建一个类时,总是在继承,如果没有明确指出要继承的类,就总是隐式地从根类Object进行继承.比如下面这段代码: 1 class Person { 2 public Person() { 3 4 } 5 } 6 class Man extends Person { 7 public Man()

PHP类继承、接口继承关系概述

PHP类继承: PHP类不支持多继承,也就是子类只能继承一个父类,但是支持多层次继承,比如: 1 class frist{ 2 public function __construct(){ 3 echo "我是第一个类.","<br>"; 4 } 5 public function printer(){ 6 echo "frist","<br>"; 7 } 8 } 9 class seconds ext

编写高质量代码改善C#程序的157个建议——建议56:使用继承ISerializable接口更灵活地控制序列化过程

建议56:使用继承ISerializable接口更灵活地控制序列化过程 接口ISerializable的意义在于,如果特性Serializable,以及与其像配套的OnDeserializedAttribute.OnDeserializingAttribute.OnSerializedAttribute.OnSerializingAttribute.NoSerializable等特性不能完全满足自定义序列化的要求,那就需要继承ISerializable了. 以下是格式化器的工作流程:如果格式化器

EF中多表公共字段,以及设置EntityBase使所有实体类继承自定义类

使用EF框架访问数据库时,如果某些表具有公共字段,例如在审核流程中,对于各类申请单资料的创建人.创建时间.修改人.修改时间,这些可能多表都需要的字段,如果在每个实体中进行赋值操作显然是类似和重复的,下面是一个统一在数据提交时进行赋值的例子(经简化,如果只是为记录时间并不用这么做),记录如下: 1. 创建一个公用接口IAudited,包含公用字段,申请单实体类继承这个接口. 2. 定义一个抽象类DbEntity(用dbml文件的EntityBase属性,使数据库实体类都继承自此类),定义OnSav

PHP类的继承和接口

PHP类的继承的一些语法 -PHP的类只支持单继承,就是每个类最多只能有一个父类或者没有父类. -子类不能继承父类使用private修饰的成员. 修饰符 可访问范围 public 当前类.子类和类外 protected 当前类和子类 private 当前类 类的类型 含义 被final修饰的类 只能实例化不能被继承 被abstract修饰的类 只能被继承不能被实例化 注意: 被final修饰的方法不能被子类重写. -通常要被子类继承的成员都使用protected,其余的尽量使用private,把

类继承接口、使用接口实例化 与 使用类实例化

一. 接口不能实例化,用接口的实现类可以实例化,将实现类的对象在内存中的地址指向接口,这个接口就可以使用了 二. 实现接口的类 实例 = new 实现接口的类()// 这样用不好吗? //这样已经不是好不好的问题了,这样的话,要接口有什么用? //用接口就是让实例和实现类的耦合度降低. //让程序更加容扩展. 以下是问题之外的知识,想看可以往下,不想看跳过. 接口 实例 = new 实现接口的类A() 接口 实例 = new 实现接口的类B() 接口 实例 = new 实现接口的类C() 这样的

【C# 复习总结】类、继承和接口

1 类 定义新的数据类型以及这些新的数据类型进行相互操作的方法 定义方式: class Cat { } class Cat:object { } C#中所有的类都是默认由object类派生来的,显示指定或者省略效果是一样的,所以上面的两个例子是完全相同的. C#中类包括:抽象类.密封类.非抽象类 abstract:表示修饰的类不完整,也就是抽象类,只能用做基类. 在使用是不能直接实例化, 不能使用new运算符. sealed:表示修饰的类不可派生,也就是密封类. base:访问最近的基类,也就是

php面向对象 封装继承多态 接口、重载、抽象类、最终类总结

1.面向对象 封装继承多态  接口.重载.抽象类.最终类 面向对象 封装继承多态  首先,在解释面向对象之前先解释下什么是面向对象? [面向对象]1.什么是类? 具有相同属性(特征)和方法(行为)的一系列个体的集合,类是一个抽象的概念2.什么是对象?从类中拿到的具有具体属性值得个体,称为对象,对象是一个具体的个体 所以,面向对象即我们专注对象来处理问题,通过从一个个具有属性和功能的类中拿到对象来处理问题. 下面我们再来细说下面向对象的三大特征:继承/封装/多态 一.继承 在PHP中我们主要通关E

基础学习day07---面向对象三---继承,接口与 抽象类

一.继承 1.1.继承概念 将对象的共性抽取出来.提取出一个单独的类. 继承使用复用以前的代码非常容易,能够大大的缩短开发周期,降低开发成本,同时增加程序的易维护性 继承使重一个类A能够直接使用另外一个类B的属性和方法的一种途径 类A可以有自己的属性和方法通过 extends 关键字让类与类之间产生继承关系. 让类和类之间产生了关系,有了这个关系,才有了多态的特性. 注意:千万不要为了获取其他类的功能,简化代码而继承. 必须是类与类之间有所属关系才可以继承,所属关系是 is  a.的关系 1.2