Android之JavaSe基础--面向对象高级部分-接口,抽象类(五)
16lz
2021-01-26
一、final关键字
Final常用来声明常量,常量必须大写,常量的内容是不能够修改的。
例子:private final String INFO = “刘欢”; //声明常量
Public final void print(){ //使用final声明的方法不能够被覆写
INFO=”HELLO”;
}
全局常量:public static final String INFO=”刘欢”;
二、抽象类:包含一个抽象方法的类就称为抽象类。(抽象方法:只声明而未实现的方法称为抽象方法,抽象方法必须使用abstract关键字声明)
abstract class A{ public static final String FLAG="CHINA"; //全局常量 private String name="刘欢"; //定义一个普通的属性 public void setName(String name){ this.name=name; } public String getName(){ return name; } public abstract void print(); //定义抽象方法,不必实现}class B extends A //继承抽象类,因为B是普通类,所以必须覆写A中的抽象方法{ public void print(){ System.out.println("FLAG="+FLAG); System.out.println("姓名="+super.getName()); }}public class AbstractDemo{ public static void main(String[] args){ B b=new B(); b.print(); }}
注意:抽象类使用的时候一定要有子类,子类仍然使用extends继承。
抽象类中绝对不能使用final关键字声明的(因为final声明没有子类),抽象类中
允许有构造方法,而且完全符合子类对象的实例化过程。
三、接口:接口是java中最重要的概念,接口可以理解为一种特殊的类,里面全都是
由全局变量和公共的抽象方法所组成。
格式: interface 接口名称{
全局常量;
抽象方法;
}
例子:
Interface test{ Public String personInfo(String name,String sex,int age){ return “你是一个人”;}Public void eat(String name,String sex,int age){ return “人需要吃饭”;}。。。}
一个子类可以同时继承抽象类和实现接口
格式: class 子类 extends 抽象类 implements 接口A,接口B…{}
例子:
abstract class A{ public static final String FLAG="CHINA"; //全局常量 private String name="刘欢"; //定义一个普通的属性 public void setName(String name){ this.name=name; } public String getName(){ return name; } public abstract void print(); //定义抽象方法,不必实现}interface Person{ public String say();}class B extends A implements Person //继承抽象类,因为B是普通类,所以必须覆写A中的抽象方法,接口{ public void print(){ System.out.println("FLAG="+FLAG); System.out.println("姓名="+super.getName()); } public String say(){ return "人说话!"; }}public class InterfaceDemo{ public static void main(String[] args){ B b=new B(); b.print(); System.out.println(b.say()); }}
注意:一个接口不能继承一个抽象类,但是可以用extends继承多个接口!!!!!!
格式: interface 子接口 extends 父接口1,父接口2..{}
更多相关文章
- android学习笔记——Handler
- Handler消息传送机制
- Android中获取图片尺寸大小两种方法
- 解决-Android: ListView.setSelection无效
- 异步访问----Android(安卓)AsyncTask 源码解析
- android 中的 window,view,activity具体关系
- javac错误:javac不是内部或外部命令 也不是可运行的程序 解决方法
- Android(安卓)Handler的基本使用
- Android常用的组件间通信方式