「FFFTP」を使用してテキストファイルを転送していたら、何故か転送後のファイルサイズが転送元より増えているという現象が起きていました。文字コードなどの設定を色々試しても結局解決出来なかったので、FTPソフトを「WinSCP」に変えて試してみたら特にオプションの設定も不要でファイルサイズも変わらずに転送出来ました。
調べてみたら転送後のファイルサイズが変動する原因としては、「WindowsとUnix系OSの改行コードの違い」という説が有力みたいですが、ファイルサイズが変わるのはどうも気持ちが悪いので、今後は「WinSCP」を使用する事にします。
「ブログ」カテゴリーアーカイブ
ブログ投稿用のカテゴリ
インスタンスとオブジェクトの違い
【Java入門】オブジェクトとインスタンスの違いをわかりやすく解説
Javaを学び始めると必ず出てくるキーワードが 「オブジェクト」 と 「インスタンス」 です。
どちらも似た意味で使われることが多く、違いがよく分からない…という声をよく耳にします。
本記事では、両者の違いを整理しつつ、イメージしやすい例を紹介します。
1. クラス・オブジェクト・インスタンスの関係
まず大前提として、Javaのプログラミングに登場する概念を整理しましょう。
-
クラス (Class)
設計図。どんなデータや処理を持つかを定義するもの。 -
オブジェクト (Object)
「モノ」という抽象的な存在を指す概念。
クラスから生成される実体を総称して「オブジェクト」と呼ぶ。 -
インスタンス (Instance)
具体的にメモリ上に確保された1つの実体。
「オブジェクトがプログラム上で実際に存在している状態」を指す。
2. 実際のコードでイメージする
例えば、犬を表すクラスを作ってみます。
1 2 3 4 5 6 |
class Dog { String name; void bark() { System.out.println(name + " がワンワン吠えています!"); } } |
この Dog
クラスは「設計図」です。
ここから具体的な犬を作るとどうなるでしょうか?
1 2 3 4 5 6 7 8 9 10 11 |
public class Main { public static void main(String[] args) { Dog pochi = new Dog(); // インスタンス生成 pochi.name = "ポチ"; pochi.bark(); Dog kuro = new Dog(); // 別のインスタンス kuro.name = "クロ"; kuro.bark(); } } |
出力結果:
ポチ がワンワン吠えています! クロ がワンワン吠えています! |
-
pochi
という インスタンス(具体的な犬)ができる -
kuro
という インスタンスも別に存在する -
それぞれをまとめて「Dogクラスのオブジェクト」と呼ぶことができる
つまり、オブジェクトは概念的な呼び方、インスタンスはその実体を強調する呼び方という違いがあります。
3. よくある混乱ポイント
-
「オブジェクト」と「インスタンス」は日常会話ではほぼ同じ意味で使われることが多い
-
教科書やAPIリファレンスでは「インスタンス化」「オブジェクト参照」といった形で区別される
-
特に試験や設計書では「インスタンス=newで生成された具体物」と覚えておくと混乱しにくい
4. まとめ
-
クラス = 設計図
-
オブジェクト = クラスから作られる「モノ」という概念
-
インスタンス = 実際に生成されメモリ上に存在する「具体的な実体」
プログラミングにおいては「オブジェクト」と「インスタンス」を厳密に区別しないケースも多いですが、
概念を押さえておくと理解がぐっと深まります。
WordPressでショートコードをそのまま表示する方法
プラグインの紹介ページを作成していたらふと困ったことが発生。
[ショートコード]を文字列としてそのまま表示させようとしたら正常に機能してしまって、文字列として表示されない!?
それで、色々と試した結果・・・
[[ショートコード]]
と[]を連続して入力すればそのまま表示されることが判明しました。(ちょっと焦りました–)
今後もちょくちょく使用すると思われるので、プラグインを使用するといった面倒さがないのは助かりますね。
独自SSLと共用SSLの違い
SSLを設定するに当たって、「独自SSL」と「共用SSL」の2通り存在するというのが分かりました。
そこで、それぞれどういう違いがあるのか調べてみました。
独自SSL
- SSL証明書を自分で取得する必要があります。
- 各社差があるがSSL証明書の年間維持費が掛かります。(価格はピンキリで1,575円~)
※正直、安価のレンタルサーバーを利用している方には不向きな価格帯ですね・・・。 - 独自ドメインによるサイトの暗号化が行えます。
- 第三の機関に身元保証されたSSL証明書を取得するため、サイト運営者の身元が保証される事になり、サイト利用者への信頼性が高まります。
- 独自に取得するSSL証明書は、一台のサーバー(専用サーバー)に対して取得します。複数の人数で共有するホスティングサービスの場合、事業者が対応している必要があります。
共用SSL
- SSL証明書を自分で取得する必要はなく、レンタルサーバー事業者が取得しているSSL証明書を利用して暗号化します。
- 自分でSSL証明書を取得する必要はないので取得・維持費用は掛かりません。
- 独自ドメインによる運用は出来ません。個人情報の入力を求める場合、異なるドメインにジャンプするため、利用者の中には不安に思う方もいるかも知れません。
- 共用SSL によるサイト運用は、通信を暗号化しているだけと言うことになり、サイト運営者の身元保証まではされません。
比較表
SSL | 取得手段 | 費用 | 通信暗号化 | 独自ドメインでの利用 | サイト運営者の身元保証 |
---|---|---|---|---|---|
独自SSL | 自分で取得 | 有料 | ○ | ○ | ○ |
共用SSL | レンタルサーバー会社が取得 | 無料 | ○ | × | × |
本格ビジネスサイトを作りながら学ぶ WordPressの教科書
CMSサイトの構築手順を段階的に分かりやすく説明しているので、私のような初心者でも集中して進めれば当ホームページ位のものは簡単に作成出来ると思います。
オールカラーで見やすく説明も丁寧なので最近購入した技術本の中でも秀逸の一冊です。この書籍を読み終えた後はWordPressを触ってるのが楽しくてしょうがない今日この頃です(^^)。
著者:プライム・ストラテジー株式会社
発売日:2012/3/30
Effective Java 第2版
Java の「正しい書き方」を学ぶ上で非常に役立ちます。
「なぜそう書くのがよいのか」という理由を解りやすく解説しています。
プロのJavaプログラマになるためには是非読んで欲しい一冊です。
難易度としては「Javaプログラマ試験(OJC-P(旧SJC-P))」を取得出来るレベル位の人が見ると理解しやすいと思います。
著者:Joshua Bloch
翻訳:柴田芳樹
発売日:2008/11/27
グラデーションをCSS3で自動作成「Grad3」
かっこいいドロップダウンメニュー
<使用方法>
1.トップページから自分が気に入ったメニューを選択。
2.「Free Dwonload」をクリックしてダウンロード。
3.ダウンロードしたファイルから、imagesフォルダ、cssファイル、jsファイルを自分のサイトへ適切に配置。
4.index.html(index.php)などへ上記のcss,jsファイルを定義
5.必要ならcssファイルをサイトに併せて修正
※私の場合、WordPressに使用したテンプレートには即マッチせず、css初心者なのでちょっと修正に手間取りました。
たったこれだけで見栄えの良いプルダウンメニューが出来ました。感謝(^^)
.icoファイルへの変換ツール「ToYcon」
画像ファイルをドラッグ&ドロップしただけでicoファイルを生成してくれます。
<ソフト名>
「ToYcon」
<ライセンス>
フリーウェア
<ダウンロード先>
https://www.snapfiles.com/downloads/toycon/dltoycon.html
<インストール方法>
ダウンロードしたファイルを解凍するだけでOKです。
※「ToYcon.exe」をダブルクリックすればToYconが起動されます。
<日本語化>
-
- 下記サイトから「日本語ランゲージファイル」をダウンロードします。
-
- ダウンロードしたファイルを解凍し、「Japanese.lng」ファイルをToYconの「lang」フォルダ下へ配置します。
- ToYconを起動後、左クリックし「Languages」→「Japanese」を選択すればメニューが日本語になります。
<主な機能>
・png、jpgなどの画像ファイルをドラッグ&ドロップだけで.ico形式へ変換してくれるツール。
・複数のファイルをまとめてドロップすることも可能。
・作成するアイコンをマルチプルアイコンにすることも可能。
・対応しているファイル形式:PNG、BMP、JPG、TGA、GIF。
・作成するアイコンのフォーマット
4、8、32bit
128×128、96×96、72×72、64×64、48×48、32×32、24×24、16×16