Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
Beyond Coding: Empowering the Next Generation through Community-Supported Programming Education / CIF26
gishi_yama
0
61
1password で 開発環境の環境変数を安全に管理したい / mild-web-sap #31
gishi_yama
0
55
新しいJavaを学んで・使っていこう! / osd26do
gishi_yama
0
260
Hokkaido JUGのJCP Annual Awards授賞式 / JJUG CCC 2026 Spring LT
gishi_yama
0
110
カンファレンスのCFPを 試しに書いてみよう! / JavaDo32
gishi_yama
0
370
開発環境構築の共通要素:必要なものを手元に持ってきて使えるようにする/JavaDo28
gishi_yama
0
210
ドメイン層×日本語プログラミング/seb_sapporo_04
gishi_yama
1
240
JSR381、知っていますか?Javaの画像認識APIのはなし / SC4Y23-05
gishi_yama
0
360
jPeekでのクラスの凝集度計測の試行 / mild-web-sapporo#24
gishi_yama
0
510
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
The Cost Of JavaScript in 2023
addyosmani
55
10k
sira's awesome portfolio website redesign presentation
elsirapls
0
410
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
660
The untapped power of vector embeddings
frankvandijk
2
1.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Color Theory Basics | Prateek | Gurzu
gurzu
0
460
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
230
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
730
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 参考 文 献