SlideShare a Scribd company logo
1 of 8
について
Javaとは 
• Sun Microsystems社で1990年代前半に開発された。 
• オブジェクト指向プログラミング言語の一つ。 
• Java仮想マシン(JVM)で実行される。 
• 異なるOS上でも動く。 
• 構文はCやC++に近い。 
• それ以前の言語のよいところを引き継いでいる。 
Duke 
Javaのマスコット
Java仮想マシン(JVM) 
ソース 
コード 
Java 
コンパイルバイトコード 
実行 
(機械語) →配布 
• Javaバイトコードは、ソースコードとネイティブコード 
の中間の性質を持つ中間コードの一つ。 
• この状態で配布される 
• JVMはJavaバイトコードからその環境にあったネイティブ 
コードに変換しながら実行する。 
ネイティブコード
Java仮想マシン(JVM) 
ソース 
コード 
Java 
コンパイルバイトコード 
実行 
(機械語) →配布 
• ソースコードから直接変換するより中間コードから 
の方が速い。 
• ネイティブコードは環境によって異なる。 
ネイティブコード
オブジェクト指向プログラミング 
• 互いにメッセージを送りあう 
オブジェクトの集まりとして 
プログラムを構成する方法。 
• 特徴 
• カプセル化 
• インヘリタンス(継承) 
• ポリモフィズム(多態性、多相性) 
• ダイナミックバインディング(動的束縛) 
• Javaの場合カプセル化と継承 
オブジェクト 
処理を行う 
オブジェクトメッセージメッセージオブジ
カプセル化 
• データと処理をまとめ 
てオブジェクトとすること。 
• データに公開された処理を通してしか 
アクセスできないようにする。 
• データが変更されてもメソッドを書き 
換えるだけですむ 
メソッド 
(処理) 
フィールド 
(データ) 
オブジェクト 
オブジェクト
インヘリタンス(継承) 
• 元になるクラス(スーパークラス)の構造と機能を、派生したクラス 
(サブクラス)に受け継がせること。 
• コードの再利用ができる。
ご清聴ありがとうございました 
Jabba the Hutt 
スターウォーズ

More Related Content

What's hot

What's hot (11)

アプリ開発検証はLXC+Ansibleで楽ちんにやろう!
アプリ開発検証はLXC+Ansibleで楽ちんにやろう!アプリ開発検証はLXC+Ansibleで楽ちんにやろう!
アプリ開発検証はLXC+Ansibleで楽ちんにやろう!
 
JNuma Library
JNuma LibraryJNuma Library
JNuma Library
 
Azure Bastion の紹介
Azure Bastion の紹介Azure Bastion の紹介
Azure Bastion の紹介
 
Docker入門
Docker入門Docker入門
Docker入門
 
Study Swift
Study Swift Study Swift
Study Swift
 
年納めにDockerやろうず
年納めにDockerやろうず年納めにDockerやろうず
年納めにDockerやろうず
 
VXLANを使ったプライベートクラウド VMマイグレーションの実現
VXLANを使ったプライベートクラウド VMマイグレーションの実現VXLANを使ったプライベートクラウド VMマイグレーションの実現
VXLANを使ったプライベートクラウド VMマイグレーションの実現
 
T2micro
T2microT2micro
T2micro
 
Thread affinity and CPS
Thread affinity and CPSThread affinity and CPS
Thread affinity and CPS
 
Containerで変わるDevOps
Containerで変わるDevOpsContainerで変わるDevOps
Containerで変わるDevOps
 
Clrh 20140301
Clrh 20140301Clrh 20140301
Clrh 20140301
 

Similar to 2014.7 LT java

AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -
SORACOM, INC
 
COBOL技術者のためのJava勉強会
COBOL技術者のためのJava勉強会COBOL技術者のためのJava勉強会
COBOL技術者のためのJava勉強会
naka hide
 
Javakuche yono
Javakuche yonoJavakuche yono
Javakuche yono
yono05
 
Distributed Systems 第10章 Distributed Object-Based Systems
Distributed Systems 第10章 Distributed Object-Based SystemsDistributed Systems 第10章 Distributed Object-Based Systems
Distributed Systems 第10章 Distributed Object-Based Systems
aomori ringo
 

Similar to 2014.7 LT java (20)

ZabbixとVulsをDocker上で連携
ZabbixとVulsをDocker上で連携ZabbixとVulsをDocker上で連携
ZabbixとVulsをDocker上で連携
 
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
 
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWSクラウドデザインパターン(CDP) - Eコマース編 -
 
OSvのご紹介 in 
Java 8 HotSpot meeting
OSvのご紹介 in 
Java 8 HotSpot meetingOSvのご紹介 in 
Java 8 HotSpot meeting
OSvのご紹介 in 
Java 8 HotSpot meeting
 
.NET vNext
.NET vNext.NET vNext
.NET vNext
 
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組みJavaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
 
COBOL技術者のためのJava勉強会
COBOL技術者のためのJava勉強会COBOL技術者のためのJava勉強会
COBOL技術者のためのJava勉強会
 
OSvの概要と実装
OSvの概要と実装OSvの概要と実装
OSvの概要と実装
 
フロントエンド開発環境
フロントエンド開発環境フロントエンド開発環境
フロントエンド開発環境
 
つぶLT20121215
つぶLT20121215つぶLT20121215
つぶLT20121215
 
Isomorphic web development with scala and scala.js
Isomorphic web development  with scala and scala.jsIsomorphic web development  with scala and scala.js
Isomorphic web development with scala and scala.js
 
cordova/electronの構造を知る
cordova/electronの構造を知るcordova/electronの構造を知る
cordova/electronの構造を知る
 
Javakuche yono
Javakuche yonoJavakuche yono
Javakuche yono
 
エンジニアのための勉強会 #5 『Container』
エンジニアのための勉強会 #5 『Container』エンジニアのための勉強会 #5 『Container』
エンジニアのための勉強会 #5 『Container』
 
Cve 2013-0422
Cve 2013-0422Cve 2013-0422
Cve 2013-0422
 
Xamarin.iOS
Xamarin.iOSXamarin.iOS
Xamarin.iOS
 
Distributed Systems 第10章 Distributed Object-Based Systems
Distributed Systems 第10章 Distributed Object-Based SystemsDistributed Systems 第10章 Distributed Object-Based Systems
Distributed Systems 第10章 Distributed Object-Based Systems
 
Play jjug2012spring
Play jjug2012springPlay jjug2012spring
Play jjug2012spring
 
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJarTalend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
Talend Studioで独自関数を実装して呼び出す - グローバルルーチンとカスタムルーチンJar
 
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
 

Recently uploaded

Recently uploaded (12)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 

2014.7 LT java

  • 2. Javaとは • Sun Microsystems社で1990年代前半に開発された。 • オブジェクト指向プログラミング言語の一つ。 • Java仮想マシン(JVM)で実行される。 • 異なるOS上でも動く。 • 構文はCやC++に近い。 • それ以前の言語のよいところを引き継いでいる。 Duke Javaのマスコット
  • 3. Java仮想マシン(JVM) ソース コード Java コンパイルバイトコード 実行 (機械語) →配布 • Javaバイトコードは、ソースコードとネイティブコード の中間の性質を持つ中間コードの一つ。 • この状態で配布される • JVMはJavaバイトコードからその環境にあったネイティブ コードに変換しながら実行する。 ネイティブコード
  • 4. Java仮想マシン(JVM) ソース コード Java コンパイルバイトコード 実行 (機械語) →配布 • ソースコードから直接変換するより中間コードから の方が速い。 • ネイティブコードは環境によって異なる。 ネイティブコード
  • 5. オブジェクト指向プログラミング • 互いにメッセージを送りあう オブジェクトの集まりとして プログラムを構成する方法。 • 特徴 • カプセル化 • インヘリタンス(継承) • ポリモフィズム(多態性、多相性) • ダイナミックバインディング(動的束縛) • Javaの場合カプセル化と継承 オブジェクト 処理を行う オブジェクトメッセージメッセージオブジ
  • 6. カプセル化 • データと処理をまとめ てオブジェクトとすること。 • データに公開された処理を通してしか アクセスできないようにする。 • データが変更されてもメソッドを書き 換えるだけですむ メソッド (処理) フィールド (データ) オブジェクト オブジェクト
  • 7. インヘリタンス(継承) • 元になるクラス(スーパークラス)の構造と機能を、派生したクラス (サブクラス)に受け継がせること。 • コードの再利用ができる。