java学习笔记--类与接口
来源:互联网 发布:个性签名 知乎 编辑:程序博客网 时间:2024/06/07 04:48
/*抽象函数不能有实现体,抽象函数必须在抽象类里面,但抽象类里可以有非抽象函数,抽象函数必须是public权限,抽象类不能实例化,子类必须实现抽象类的所有抽象函数,否则子类仍然是抽象类,子类不能继承多个父类*/abstract class Animal{abstract public void sleep();private void eat(){System.out.println("Animal eating");}public void walk(){System.out.println("Animal walking");}}class Bird extends Animal{public void sleep(){System.out.println("Sheep sleeping");}public void fly(){System.out.println("bird flying");}}
/*如果父类的一个函数被子类覆盖,而此函数在父类的构造函数里使用了,在创建子类对象时父类构造函数调用的是由子类覆盖的函数,在C++中父类构造函数则会调用父类的函数*/class Bird extends Animal{Bird(){fly();}public void sleep(){System.out.println("Sheep sleeping");}public void fly(){System.out.println("bird flying");}}class MockingBird extends Bird{MockingBird(){fly();}public void fly(){System.out.println("mocking flying");}}
/*接口的成员都是public权限的,接口里的数据成员一定是public static final型的,一个接口可以继承多个接口,一个类可以继承一个类、实现多个接口*/interface Animal{public static final int EndangeredSpeciesNum = 10;public void sleep();}interface Robot{public void work();}abstract class Life{abstract public void breath();}class RobotAnimal extends Life implements Animal, Robot{public void breath(){System.out.println("I don't need to breath");}public void sleep(){System.out.println("I don't need to sleep");}public void work(){System.out.println("working");}}interface SuperRobot extends Animal, Robot{}
/*final修饰的变量为常量,final修饰的函数不可以被覆盖,final修饰的类不可以被继承*/final class Animal{final int EndangeredNum = 10;public final void sleep(){System.out.println("sleeping");}}
/*创建类对象时的初始化顺序1.静态变量赋值初始化/静态内部代码块2.子类构造函数3.父类构造函数4.非静态变量赋值初始休/非静态内部代码块5.子类构造函数体*/
0 0
- Java接口与抽象类学习笔记
- java学习笔记--类与接口
- java学习笔记----抽象类与接口
- 《JAVA与模式》学习笔记之接口与抽象类
- 【学习笔记11】java面向对象-接口与类、接口与接口之间的关系
- Java学习笔记 --抽象类与接口 基于类Shape
- JAVA学习笔记(六)抽象类与接口
- java学习笔记-抽象类abstract与接口interface
- 01-java学习笔记【接口与抽象类】
- 【Java学习笔记】3:抽象类与接口
- java学习笔记(十六)抽象类与接口
- JAVA学习笔记----接口与内部类
- java学习笔记-继承与接口
- Java接口与抽象(学习笔记)
- java学习笔记-接口与内部类
- Java学习笔记--接口与多态
- java学习笔记<一> 继承与接口
- Java学习笔记:接口与实现
- 利用addChildViewController管理子视图控制器<2>
- 堆,优先队列
- android studio gradle 签名
- 计算一个数的二进制位中1的个数的方法总结
- Android中关于颜色的使用
- java学习笔记--类与接口
- 数据库连接池DBPool分析(五):Makefile
- WAMP Server多站点出现You don t have permission to access / on this server错误
- #SC2440虚拟地址到物理地址的转换
- 浅谈 C++ 中的 new/delete 和 new[]/delete[]
- 【html】day05_表格_表单
- (第三期1.1.4节)myvivi(1th)
- 数据库连接池DBPool分析(六):gtest
- 小马哥---高仿苹果6刷机 主板型号v68 拆机主板图与开机界面图 6572芯片