Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Javaへの新たなHello, World / yuruchitose-04
Search
Hiroto YAMAKAWA
October 20, 2024
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Javaへの新たなHello, World / yuruchitose-04
#ゆる千歳 Vol.04 でのLTスライドです
Hiroto YAMAKAWA
October 20, 2024
More Decks by Hiroto YAMAKAWA
See All by Hiroto YAMAKAWA
新しいJavaを学んで・使っていこう! / osd26do
gishi_yama
0
180
Hokkaido JUGのJCP Annual Awards授賞式 / JJUG CCC 2026 Spring LT
gishi_yama
0
74
カンファレンスのCFPを 試しに書いてみよう! / JavaDo32
gishi_yama
0
210
開発環境構築の共通要素:必要なものを手元に持ってきて使えるようにする/JavaDo28
gishi_yama
0
190
ドメイン層×日本語プログラミング/seb_sapporo_04
gishi_yama
1
220
JSR381、知っていますか?Javaの画像認識APIのはなし / SC4Y23-05
gishi_yama
0
340
jPeekでのクラスの凝集度計測の試行 / mild-web-sapporo#24
gishi_yama
0
500
Github CopilotとChatGPTを使って感じた使い分けの糸口 / JavaDo #22
gishi_yama
1
1.8k
子ども向けプログラミング体験教室でのHololens2利用事例 / IoTLT#97
gishi_yama
0
190
Featured
See All Featured
A designer walks into a library…
pauljervisheath
211
24k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
340
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
210
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
4 Signs Your Business is Dying
shpigford
187
22k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
How STYLIGHT went responsive
nonsquared
100
6.2k
The Invisible Side of Design
smashingmag
301
52k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
240
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Building the Perfect Custom Keyboard
takai
2
810
Transcript
#ゆるちとせ Javaへの新たな "Hello, World" 山川広人 (@gishi_yama) 公立千歳科学技術大学 情報システム科 准教授 Javaユーザグループ北海道 リーダー
 1
#ゆるちとせ Javaを初めて学ぶときの「おまじない」 2 public class HelloWorld { public static void
main(String[] args) { System.out.println("Hello World"); } } やりたいことは「プログラムを実行したら Hello World! と表示する」なのに、 (初学者にとっては)高度な内容が入りすぎている →わからない、難しいという印象を与えすぎてしまう 🫠
#ゆるちとせ A Smooth On-Ramp (Javaへのスムーズな 入口車 線) 3
#ゆるちとせ Demo1 4 void main() { println("Hello Java!"); } 実行してみたい場合は,Foo.java
に上記のいずれかを記載し, java --enable-preview --source 23 Foo.java で実行できる void main() { String inputted = readln("入力してください:"); show(inputted); } void show(String str) { println(str); } 表示だけのHello, World! 入力を伴う Hello, World!
#ゆるちとせ Demo2(あえてクラスを宣 言 すると) 5 import static java.io.IO.*; class Java23b
{ void main() { String inputted = readln("入力してください:"); show(inputted); } void show(String str) { println(str); } } クラスを定義する場合は,java.io.IO.* のインポートが必要 java.io.IOクラスには,readln, println などが定義されている → https://docs.oracle.com/en/java/javase/23/docs/api/java.base/java/io/IO.html
#ゆるちとせ • 起動用クラスの psvm が不要になる • 入出力の「System.out」「System.in(にまつわるクラス)」の記述が省略 (ただし、明確な起動用クラス定義をする場合は、java.io.IO.* のインポートは必要) 今後のJavaでは
6 ※現時点(Java 23)ではpreview機能なので、起動時にパラメータが必要なので注意 • @nowokay(きしだ なおき) "Java 23新機能まとめ" https://qiita.com/nowokay/items/7650b959fd4b0be54751 • Brian Goetz "Paving the on-ramp" https://openjdk.org/projects/amber/design-notes/on-ramp • ひしだま's 技術メモページ "mainメソッド簡略化(Java21~23) https://www.ne.jp/asahi/hishidama/home/tech/java/preview/main.21.html 参考 文 献