Android之JavaSe基础--面向对象高级部分-接口,抽象类(五)
来源:互联网 发布:java导出excel在本地 编辑:程序博客网 时间:2024/05/23 16:53
一、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..{}
0 0
- Android之JavaSe基础--面向对象高级部分-接口,抽象类(五)
- Android之JavaSe基础--面向对象高级部分(六)
- Android之JAVASe基础篇-面向对象-高级部分(四)
- JavaSE----面向对象(多态、抽象类、接口)
- JavaSE基础--(三)面向对象 部分
- java基础学习面向对象之抽象类和接口 五-11
- C#基础系列(9)-- 第三部分 面向对象相关 -- 抽象类与接口(2)
- java基础篇(五:面向对象——1)接口和抽象类
- 面向对象(高级)抽象类与接口的应用
- 面向对象(高级)抽象类与接口的应用
- 面向对象(高级篇之抽象类与接口的应用)
- Android之JAVASe基础篇-面向对象(二)
- Android之JAVASe基础篇-面向对象-多线程(七)
- Android之JAVASe基础篇-面向对象-IO(九)
- Android之JAVASe基础篇-面向对象-类集(十)
- 面向对象基础之三抽象类与接口
- 面向对象基础之抽象类与接口 上
- 面向对象基础之抽象类与接口 下
- Oracle 分区表详解(oracle partition table)
- 阿里巴巴2016校招面试经验
- Linux随笔二之安装redis和扩展
- BJOI2015 day1
- Hadoop中Combiner的使用
- Android之JavaSe基础--面向对象高级部分-接口,抽象类(五)
- iOS开发——Autolayout的Top Layout guide问题
- Linux动态库的查找路径
- Android—edittext第一次显示不显示光标的
- Your build settings specify a provisioning profile with the UUID, no provisioning profile was
- Android 通过hosts屏蔽指定ip的网络访问
- TJOI2015
- 常用算法回顾——冒泡排序
- ubuntu缓存、回收垃圾清理