タグ

ブックマーク / www.kab-studio.biz (4)

  • !=演算子とは : JavaA2Z

    iww
    iww 2022/08/25
    ビックリイコールエンザンシ で合ってる。 マジか
  • コンポジションとは : JavaA2Z

    あるクラスの機能を持つクラスのこと。 特定のクラスの機能を、自分が作るクラスにも持たせたい場合に、継承を使わずフィールドとしてそのクラスを持ち、そのクラスのメソッドを呼び出すメソッドを持たせること。そうすることで、クラスに他のクラスの機能を組み込むことができる。 オブジェクト指向用語。 厳密なオブジェクト指向では、継承は「機能の継承」を目的とせず、「スーパークラスはサブクラスの一種である」といういわゆる「is-a」の関係を持たなければならない。 そのため、単に機能を持たせたい場合には、継承ではなくコンポジションとすることが推奨される。 メリットとして、「機能の継承」はクラスの関連図をイメージする際に分かりにくくなりやすいためそれを回避できる、メソッドをワンクッション置くことで融通が効く、といったものがある。また、コンポジションの対象となるクラスは、そのサブクラスも使用できることになる。 デ

    iww
    iww 2018/07/31
    継承しないでメンバとして持たせる方法。 is-aじゃなくてhas-a
  • コンクリートクラスとは : JavaA2Z

    「実装クラス」もしくは「サブクラス」のこと。 インターフェイスや、抽象クラスにとっての「実体のある、具象化されたクラス」を「コンクリートクラス」と言う。 デザインパターン用語。オブジェクト指向用語的な面もあるため、用語としては「実装クラス」「サブクラス」かは問わない。 日語の「コンクリート」は固有名詞的な所があるので、それとは別物として考えた方がいいだろう。 // Sample.java public class Sample { public static void main( String[] args ) { // ImplementedClassクラスを使用してみます。 ImplementedClass implementedClass = new ImplementedClass(); implementedClass.output(); // ImplementedClass

    iww
    iww 2014/09/15
    抽象クラスの反対語がコンクリートクラス
  • Codian - ポインタと文字列とCStringと

    更新日: 2007/11/19 動作確認環境:Windows XP Professional SP2, Visual C++ 6.0 Professional SP6 サンプルプロジェクト(Visual C++ 6.0): MxA09_VC6.zip サンプルプロジェクト(Visual C++ 6.0用、サンプルプログラム13のみ): MxA09_Unicode_VC6.zip 最後は文字列についてです。 MFCにはとても便利なCStringクラスがありますが、それをどう使えばいいのか、やや遠回り気味に説明したいと思います。 ちなみに文字列やポインタについては、Codianの「ポインタ」でも解説していますのでそちらもどうぞ。 C/C++言語の文字列型 なんてものは存在しません!! Visual Basic他、多くの言語は簡単に文字列を操作できる「文字列型」を持っていますが、C/C++言語に

    iww
    iww 2010/06/15
    恋しさとせつなさと心強さと
  • 1