2 Star 0 Fork 0

20175326李一潇 / 20175326java

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
MyDoc.java 1.21 KB
一键复制 编辑 原始数据 按行查看 历史
20175326李一潇 提交于 2019-04-18 23:52 . MyDoc
abstract class Data{//Data类:打印数据
abstract public void Display();
}
class Integer extends Data{//Data的子类
int value;
Integer(){
value=5310;
}
public void Display(){//方法重写
System.out.println(value);
}
}
class Boolean extends Data{
boolean value;
Boolean(){
value=true;
}
public void Display(){
System.out.println(value);
}
}
abstract class Factory{
abstract public Data CreatDataObject();//抽象类:创造指定数据类型,所有数据类型的父类
}
class IntegerFactory extends Factory{//Integer类,Factory子类
public Data CreatDataObject(){//方法重写
return new Integer();
}
}
class BooleanFactory extends Factory{
public Data CreatDataObject(){
return new Boolean();
}
}
class Document{
Data pd;
Document(Factory pf){
pd=pf.CreatDataObject();//使pd是数据类型的上转型对象
}
public void displayData(){//调用pd子类,即不同数据类型重写的对象
pd.Display();
}
}
public class MyDoc{
static Document b;
public static void main(String[] args) {
b=new Document(new BooleanFactory());
b.displayData();
}
}
Java
1
https://gitee.com/lyx-hhhhh/20175326java.git
git@gitee.com:lyx-hhhhh/20175326java.git
lyx-hhhhh
20175326java
20175326java
master

搜索帮助