JP2002041310A - クラス動的バインドシステムおよび方法 - Google Patents

クラス動的バインドシステムおよび方法

Info

Publication number
JP2002041310A
JP2002041310A JP2000220618A JP2000220618A JP2002041310A JP 2002041310 A JP2002041310 A JP 2002041310A JP 2000220618 A JP2000220618 A JP 2000220618A JP 2000220618 A JP2000220618 A JP 2000220618A JP 2002041310 A JP2002041310 A JP 2002041310A
Authority
JP
Japan
Prior art keywords
class
application program
database
classes
name
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2000220618A
Other languages
English (en)
Inventor
Tomohisa Nakamura
知久 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2000220618A priority Critical patent/JP2002041310A/ja
Publication of JP2002041310A publication Critical patent/JP2002041310A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 アプリケーションプログラムのメンテナンス
に要する時間を削減する。 【解決手段】 アプリケーションプログラム1は、デー
タベース3に格納されていて同名のメソッドBを有しク
ラス名が同じである複数のクラスAのメソッドBを呼び
出す場合に、アプリケーションプログラム1によって指
定された条件を満たすクラスAを動的に選択するクラス
選択メソッド4を呼び出す。すると、データベース3に
格納された同名の複数のクラスAのメソッドBのうち、
アプリケーションプログラム1によって指定された条件
を満たすクラスAのメソッドBが自動的に実行されるよ
うになる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、アプリケーション
プログラムとクラスとを動的にバインドするクラス動的
バインドシステムおよび方法に関する。
【0002】
【従来の技術】従来、オブジェクト指向のプログラミン
グ言語では、そのプログラミングのためにクラスを定義
する。そのクラスは、図4に示すように、データと、そ
のデータの処理の動作が記述しているメソッドとから構
成されている。図4に示すクラスは、2つのデータA、
Bと、1つのメソッドとから構成され、そのメソッドの
動作はA+Bである。アプリケーションプログラムは、
そのクラスのメソッドを呼び出すことによって2つの値
A+Bの和の値を得ることができる。
【0003】オブジェクト指向のプログラミングを行う
場合には、まず、アプリケーションプログラムとのイン
タフェースとなるクラス名あるいはメソッド名を定義
し、あとからメソッドの内容を実装していくようにな
る。したがって、このようなプログラミングでは、メソ
ッドの動作が異なる同名のクラスが複数作成される場合
がある。したがって、メソッドの動作が異なるクラスが
複数作成されていた場合には、アプリケーションプログ
ラムをコンパイルするときにアプリケーションプログラ
ムが使用するクラスが指定されていなければならない。
また、動作が異なるクラスが複数作成されていた場合、
アプリケーションプログラムが使用するクラスを変更す
る場合には、指定されているクラスを変更してアプリケ
ーションプログラムを再コンパイルしなければならず、
アプリケーションプログラムのメンテナンスに時間がか
かってしまうという問題があった。
【0004】
【発明が解決しようとする課題】以上述べたように、従
来のオブジェクト指向のプログラミングにおいては、メ
ソッドの動作が異なるクラスが複数作成されていた場
合、アプリケーションプログラムから使用するクラスを
変更する場合には、指定するクラスを変更してアプリケ
ーションプログラムを再コンパイルしなければならず、
アプリケーションプログラムのメンテナンスに時間がか
かってしまうという問題があった。
【0005】本発明は、アプリケーションプログラムの
メンテナンスの時間を削減することができるクラス動的
バインドシステムおよび方法を提供することを目的とす
る。
【0006】
【課題を解決するための手段】上記課題を解決するため
に、本発明のクラス動的バインドシステムでは、同名の
メソッドを有しクラス名が同じである複数のクラスが格
納されているデータベースと、アプリケーションプログ
ラムが該メソッドを呼び出した場合に、前記各クラスの
中からアプリケーションプログラムによって指定された
条件を満たすクラスを選択して該クラスのメソッドを実
行するクラス選択メソッドを有しているデータベースク
ラスとを備える。
【0007】本発明のクラス動的バインドシステムで
は、アプリケーションプログラムがデータベースに格納
されていて同名のメソッドを有しクラス名が同じである
複数のクラスのメソッドを呼び出した場合に、アプリケ
ーションプログラムによって指定された条件を満たすク
ラスのメソッドを動的に選択するクラス選択メソッドを
有するデータベースクラスを備えることによって、アプ
リケーションプログラムをクラスが変更、追加される度
にアプリケーションプログラムの再コンパイルを行う必
要がなくなるため、アプリケーションプログラムのメン
テナンスに要する時間を削減することができる。
【0008】
【発明の実施の形態】次に、本発明の一実施形態のクラ
ス動的バインドシステムについて図面を参照して詳細に
説明する。
【0009】図1は、本実施形態のクラス動的バインド
システムの構成を示すブロック図である。本実施形態の
クラス動的バインドシステムは、データベースクラス2
と、データベース3とを備えている。
【0010】データベース3には、同名のメソッドBの
動作が異なり、同名のクラスを有する3つのクラスAが
格納されているとする。各クラスAのメソッドBは、そ
れぞれ「動作速度が速い」、「信頼性が高い」、「動作
速度と信頼性のバランスがとれている」という特徴を有
している。データベース3は、各クラスAのメソッドB
の動作速度を示すデータspeedと、信頼性を示すデ
ータqualityとを有している。これらのデータの
値は、大きければ大きいほど、そのクラスAがその能力
に優れていることを示している。データベースクラス2
は、データベース3に格納された各クラスAの中から、
アプリケーションプログラム1によって指定された条件
を満たすクラスAを選択してそのクラスAのメソッドB
を実行するクラス選択メソッド4を有している。
【0011】図2は、本実施形態のクラス動的バインド
方法を示すフローチャートである。このフローチャート
は、アプリケーションプログラム1が、クラスAのメソ
ッドBを呼び出す際のアプリケーションプログラム1の
処理のフローチャートである。
【0012】アプリケーションプログラム1が、データ
ベース3に格納されているクラスAを呼び出そうとする
と、アプリケーションプログラム1は、まず、そのクラ
スAのオブジェクトを作成し(ステップS101)、次
に、データベースクラス2のオブジェクトを作成する
(ステップS102)。データベースクラス2は、デー
タベース3に格納された同名の複数のクラスAの中から
指定された条件を満たすクラスAを選択して、そのクラ
スAのメソッドBを実行するクラス選択メソッド4を有
している。したがって、アプリケーションプログラム1
が、そのクラス選択メソッド4を呼び出せば(ステップ
S103)、データベース3に格納された同名の複数の
クラスAのうち、アプリケーションプログラム1によっ
て指定された条件を満たすクラスAのメソッドBが自動
的に実行されるようになる。
【0013】図3は、図2のフローチャートをJava
言語で記述した場合のアプリケーションプログラム1の
記述例である。ここで、ClassAは、データベース
3に格納されている同名の複数のクラスAであり、ob
ject_aはそのクラスAのオブジェクトである。ま
た、DBclassはデータベースクラス2であり、d
b_classはそのDBclassのオブジェクトで
ある。さらに、invokeMethod()は、クラ
ス選択メソッド4であり、そのinvokeMetho
d()では、クラスAのオブジェクト名、クラスAのク
ラス名、実行するメソッド名、クラスAを選択するため
の条件が引数として指定される。このアプリケーション
プログラム1では、クラスAを選択するための条件とし
て、speed>7かつquality<3が指定され
ているため、クラスAとして、真ん中のクラスAが選択
され、そのクラスAのメソッドBが実行されるようにな
る。アプリケーションプログラム1は、呼び出したクラ
ス選択メソッド4の返り値として実行されたクラスAの
メソッドBの処理結果を受け取る。
【0014】以上述べたように、本実施形態のクラス動
的バインドシステムおよび方法では、アプリケーション
プログラム1がデータベース3に格納されていて同名の
メソッドBを有しクラス名が同じである複数のクラスA
のメソッドBを呼び出した場合に、アプリケーションプ
ログラム1によって指定された条件を満たすクラスAを
動的に選択するクラス選択メソッド4を有するデータベ
ースクラス2を備えることによって、クラスAが変更、
追加される度にアプリケーションプログラム1の再コン
パイルを行う必要がなくなるため、アプリケーションプ
ログラム1のメンテナンスに要する時間を削減すること
ができる。
【0015】本実施形態のクラス動的バインドシステム
によって、アプリケーションプログラム1の実行時に、
動的に複数の同名のクラスAのうちから最適なクラスA
を選択することができるようになり、アプリケーション
プログラム1が常に最新のクラスAにバインドさせるよ
うにしたり、アプリケーションプログラム1がその状態
によってバインドするクラスAを切り換えたりすること
ができる。
【0016】
【発明の効果】本発明のクラス動的バインドシステムお
よび方法では、アプリケーションプログラムがデータベ
ースに格納されていて同名のメソッドを有しクラス名が
同じである複数のクラスのメソッドを呼び出した場合
に、アプリケーションプログラムによって指定された条
件を満たすクラスのメソッドを動的に選択するクラス選
択メソッドを有するデータベースクラスを備えることに
よって、アプリケーションプログラムをクラスが変更、
追加される度にアプリケーションプログラムの再コンパ
イルを行う必要がなくなるため、アプリケーションプロ
グラムのメンテナンスに要する時間を削減することがで
きる。
【図面の簡単な説明】
【図1】本発明の一実施形態のクラス動的バインドシス
テムの構成を示すブロック図である。
【図2】本発明の一実施形態のクラス動的バインド方法
を示すフローチャートである。
【図3】図2のフローチャートをJava言語で記述し
た場合のアプリケーションプログラム1の記述例であ
る。
【図4】クラスの構造の一例を示す図である。
【符号の説明】
1 アプリケーションプログラム 2 データベースクラス 3 データベース 4 クラス選択メソッド

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 同名のメソッドを有しクラス名が同じで
    ある複数のクラスが格納されているデータベースと、 アプリケーションプログラムが該メソッドを呼び出した
    場合に、前記各クラスの中からアプリケーションプログ
    ラムによって指定された条件を満たすクラスを選択して
    該クラスのメソッドを実行するクラス選択メソッドを有
    しているデータベースクラスとを備えるクラス動的バイ
    ンドシステム。
  2. 【請求項2】 アプリケーションプログラムがデータベ
    ースに格納されていてクラス名が同じである複数のクラ
    スのメソッドを呼び出した場合に、前記各クラスの中か
    らアプリケーションプログラムによって指定された条件
    を満たすクラスを選択し、該クラスのメソッドを実行す
    るクラス動的バインド方法。
JP2000220618A 2000-07-21 2000-07-21 クラス動的バインドシステムおよび方法 Pending JP2002041310A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000220618A JP2002041310A (ja) 2000-07-21 2000-07-21 クラス動的バインドシステムおよび方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000220618A JP2002041310A (ja) 2000-07-21 2000-07-21 クラス動的バインドシステムおよび方法

Publications (1)

Publication Number Publication Date
JP2002041310A true JP2002041310A (ja) 2002-02-08

Family

ID=18715192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000220618A Pending JP2002041310A (ja) 2000-07-21 2000-07-21 クラス動的バインドシステムおよび方法

Country Status (1)

Country Link
JP (1) JP2002041310A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100488916B1 (ko) * 2002-12-04 2005-05-17 유징테크주식회사 작업클래스 선택장치 및 방법
JP2007206965A (ja) * 2006-02-01 2007-08-16 Canon Inc 情報処理装置及び当該装置におけるオブジェクト指向プログラムの実行方法とそのプログラム
JP2009054146A (ja) * 2007-07-27 2009-03-12 Canon Inc 情報処理方法、情報処理装置及びプログラム
JP2015005246A (ja) * 2013-06-24 2015-01-08 株式会社日立システムズ 情報処理装置、処理呼出方法、及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100488916B1 (ko) * 2002-12-04 2005-05-17 유징테크주식회사 작업클래스 선택장치 및 방법
JP2007206965A (ja) * 2006-02-01 2007-08-16 Canon Inc 情報処理装置及び当該装置におけるオブジェクト指向プログラムの実行方法とそのプログラム
JP2009054146A (ja) * 2007-07-27 2009-03-12 Canon Inc 情報処理方法、情報処理装置及びプログラム
JP2015005246A (ja) * 2013-06-24 2015-01-08 株式会社日立システムズ 情報処理装置、処理呼出方法、及びプログラム

Similar Documents

Publication Publication Date Title
US6948172B1 (en) Preemptive multi-tasking with cooperative groups of tasks
US6052707A (en) Preemptive multi-tasking with cooperative groups of tasks
JPH08502612A (ja) データ処理システムおよびオペレーティング・システム
CA2568565A1 (en) System and method for implementing a general application program interface
JPH09231077A (ja) コンピュータプログラムのサイズを縮小する方法
CN111338769A (zh) 一种数据处理方法、装置及计算机可读存储介质
CN111310638B (zh) 一种数据处理方法、装置及计算机可读存储介质
JP2002041310A (ja) クラス動的バインドシステムおよび方法
JPH1063508A (ja) 言語処理装置および言語処理方法
US20020144015A1 (en) Method and apparatus to implement a state machine
JP2008537248A (ja) デジタルシグナルプロセッサ上でのマルチタスクの実施
JP2002099435A (ja) マルチタスク制御方法および情報処理装置
US6330319B1 (en) System and method for adding services to computer telephone systems
US5765148A (en) Database processing apparatus and database processing method for variable length objects, and computer-readable memory medium for storing database processing program
JPS62151940A (ja) レジスタ退避/復帰方式
JP2000122876A (ja) 情報処理装置
CN113741946B (zh) 公共接口函数库的裁剪方法、装置、设备及可读存储介质
JP2009509214A (ja) スレッドコールテーブルを用いたコンピュータ装置への機能性の付加
JP3637606B2 (ja) データ処理装置
JPS63106047A (ja) 動的サブル−チン呼び出し方式
JPH10326192A (ja) Catv端末ソフトウェアプログラムダウンロードシステム
JPH0340053A (ja) 複数通信手順制御方式
JPH08194612A (ja) プログラム実行制御方法及びプログラム実行制御システム
JPH10293691A (ja) レジスタ割り付け方法
JPH10143376A (ja) 情報処理装置

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20041115

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20041115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050208

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050608