作家
登录

怎样在java中定义一个抽象属性

作者: 来源: 2017-08-17 17:02:40 阅读 我要评论


  1. The following transaction has just finished:  
  2. 1502179140689,1501,This is a test transaction !!  

如何在java中定义一个抽象属性

别的修改TransactionManagerFS如下:

Abstract关键字平日被用于类和办法,用来把某些行动的实现宛转给子类。因为Java不支撑抽象属性,如不雅你试图将类属性标记为抽象,将会获得一个编译时缺点。

在本教程中,我们将介绍两种定义抽象属性的办法,这些抽象属性可以由子类进行设置,并且不应用Abstract 关键字。

实用案例

假设我们想要实现一个记录事务的日记模块,用来记录特定事务的信息。我们欲望这个模块是抽象的,如许我们可以实现不合的日记记录方法,例如:记录到文件或数据库中。

我们的引擎应用预定义的分隔符来连接日记中的信息,并存储在一个String中。具体应当应用哪个分隔符,这将取决于日记记录的规矩,例如可以用字符“,”对日记记录中不合部分的信息进行瓜分。

下面我供给两种方法,来实现把分隔符的定义宛转给子类。

在抽象类中定义带参数的构造函数

在抽象类中定义动态属性的第一种办法是:定义一个参数的构造函数。

所以我们可以如许实现这个引擎:

  1. // TransactionManager.java 
  2.  
  3. public abstract class TransactionManager { 
  4.     private String separator; 
  5.      
  6.     public TransactionManager(String separator) { 
  7.         this.separator = separator; 
  8.     } 
  9.      
  10.     public abstract void writeTransaction(String result); 
  11.      
  12.     public Transaction startTransaction() 
  13.     { 
  14.         Transaction transaction = new Transaction(System.currentTimeMillis()); 
  15.         return transaction
  16.     } 
  17.      
  18.     public void endTransaction(Transaction t) { 
  19.         long processingTime = System.currentTimeMillis() - t.getStartTime(); 
  20.   
  21.         StringBuilder logBuilder = new StringBuilder(); 
  22.         logBuilder.append(t.getStartTime()); 
  23.         // Notice the use of this.separator 
  24.         logBuilder.append(this.separator); 
  25.         logBuilder.append(processingTime); 
  26.         logBuilder.append(this.separator); 
  27.         logBuilder.append(t.getData()); 
  28.   
  29.         String result = logBuilder.toString(); 
     1/4    1 2 3 4 下一页 尾页

      推荐阅读

      深入解析Node.js中5种发起HTTP请求的方法

    【51CTO晃荡】8.26 带你深度懂得清华大年夜学、搜狗基于算法的IT运维实践与摸索 创建HTTP请求使现代编程说话的核心功能之一,也是很多法度榜样员在接触到新的开辟情况时最>>>详细阅读


    本文标题:怎样在java中定义一个抽象属性

    地址:http://www.17bianji.com/lsqh/36784.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)