JAVA関連のことを調べてみた

JAVA関連のことを調べてみた
目次

Hello Worldからの復習 ~参照型の型変換編~

##### お品書き
+ 参照型の型変換って?
+ キャストするパターン
+ 型変換Sample

—-

以前復習した基本データ型の型変換↓

https://qiita.com/tianshandafu894/items/37e47f1654718725b9d6

基本データ型はint型とかdouble型のように数値を扱えるようにまとめられている。
その**データ型間**で**型の変換**ができるという話。

◆参照型の型変換って?

参照型の型変換ができるときというのは、

:::note
型変換する前のクラスと変更後のクラスの間で継承関係にあるとき
:::

継承関係にあるクラス同士でオブジェクトの型変換↓

:::note
スーパー = サブ のときは**自動**
サブ = スーパーのときは**キャストで明示**
:::

イメージ図

“`mermaid
classDiagram
direction RL
Person <|--"継承"Student class Person{ name Preson(...)

元記事を表示

[Google Drive API v3] Javaで共有ドライブを作成・更新・削除する

Google Drive API v3(Java)を使用して、
共有ドライブを作成・更新・削除する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[共有ドライブを作成](#1-共有ドライブを作成)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|
|2||[共有ドライブの情報を更新](#2-共有ドライブの情報を更新)|
||1|[スコープ](#21-スコープ)|
||2|[実行](#22-実行)|
||3|[レスポンスの内容](#23-レスポンスの内容)|
|3||[共有ドライブを削除](#3-共有ドライブを削除)|
||1|[スコープ](#31-スコ

元記事を表示

Hello Worldからの復習 ~final編~

だいぶ前、ギターヒーローのイングヴェイが大物バンドのEuropeに対し、finalcountdownがほんとにfinalだったみたいなことを言っていたのを思い出した。

##### お品書き
+ finalキーワードって?
+ finalSample
—–

◆finalキーワードって?

クラス、メンバー変数、メソッドにつけられる修飾子で
`これで最後`の意味

:::note
クラス:**継承**が出来なくなる
メンバー変数:**代入**ができなくなる
      ➡**定数**は作れる
      ※定数名はすべて大文字(慣習)
メソッド:オーバーライドできなくなる
:::

“`java:クラス
final class Student{
➡ class DameStudent extends Student
//コンパイル時点でエラー
//プログラム全体で見た時にこのプログラムを継承されてしまうと整合性が合わなくなってしまうというときにつける。
“`
ちなみに、Integer.parseInt()メソッドはIntegerクラスは勝手に継承されては困るということで、f

元記事を表示

[Google Drive API v3] Javaでファイルのコメントを追加・変更・削除する

Google Drive API v3(Java)を使用して、
Driveに置かれているファイルのコメントを追加・変更・削除する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[コメントを追加](#1-コメントを追加)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|
|2||[コメントを変更](#2-コメントを変更)|
||1|[スコープ](#21-スコープ)|
||2|[実行](#22-実行)|
||3|[レスポンスの内容](#23-レスポンスの内容)|
|3||[コメントを削除](#3-コメントを削除)|
||1|[スコープ](#31-スコープ)

元記事を表示

[Google Drive API v3] Javaでファイルのコメントを取得する

Google Drive API v3(Java)を使用して、
Driveに置かれているファイルのコメントを取得する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[コメントリストを取得](#1-コメントリストを取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|
|2||[コメントを取得](#2-コメントを取得)|
||1|[スコープ](#21-スコープ)|
||2|[実行](#22-実行)|
||3|[レスポンスの内容](#23-レスポンスの内容)|

## 1. コメントリストを取得

### 1.1. スコープ
このAPIを実行するには、以

元記事を表示

[Google Drive API v3] Javaでユーザーや共有ドライブ、ファイルの変更履歴を取得する

Google Drive API v3(Java)を使用して、
Driveに格納されているファイルの変更履歴を取得する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[変更履歴の開始トークンを取得](#1-変更履歴の開始トークンを取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|
|2||[変更履歴リストを取得](#2-変更履歴リストを取得)|
||1|[スコープ](#21-スコープ)|
||2|[実行](#22-実行)|
||3|[レスポンスの内容](#23-レスポンスの内容)|

## 1. 変更履歴の開始トークンを取得
変更履歴の開始トーク

元記事を表示

Java ラッパークラスについて

## ラッパークラスとは

基本データ型のデータをオブジェクトとして包み込むクラスのことです。
また基本データ型とラッパークラスでは自動的に型変換が行われます。

:pushpin:基本データ型のおさらい

https://qiita.com/nukoxo/items/5d9d72f3e451a9afb781

## :ledger:ラッパークラスの種類

8種類のラッパークラスが`java.langパッケージ`に用意されています。
一覧にまとめてみました。

| データ型 | ラッパークラス |
|:-:|:-:|
| byte | Byte |
| short | Short |
| int | Integer |
| long |Long |
| float | Flort |
| double | Double |
| char | Character |
| boolean | Boolean |

int型とchar型以外は一文字目が大文字になります

:::note info
ラッパークラスは参照型なので、初期化していない場合の値がnu

元記事を表示

Hello Worldからの復習 ~this,super編~

##### お品書き
+ this、superって?
+ thisキーワード
+ superキーワード
+ メリット
+ thisとsuperによるコンストラクタの呼び出し
+ this(~)Sample
+ super(~)Sample

—-

this、superって?

**メンバー変数・メソッドの呼び出し**

:::note
this.~ = **このオブジェクトの~**
super.~ = **スーパークラスの~**
:::

◆thisキーワード

“`java:例
class Person{
String name;
void setName(String name){
this.name = name;
}
void display{

}
}

class Student extends Person{
int stuNo;
void display(){
super.display();
System.out.println(stuNo);
}
}

“`

引数のna

元記事を表示

[Google Drive API v3] Javaで共有ドライブの情報を取得する

Google Drive API v3(Java)を使用して、
共有ドライブの情報を取得する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[共有ドライブリストを取得](#1-共有ドライブリストを取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|
|2||[共有ドライブの情報を取得](#2-共有ドライブの情報を取得)|
||1|[スコープ](#21-スコープ)|
||2|[実行](#22-実行)|
||3|[レスポンスの内容](#23-レスポンスの内容)|

## 1. 共有ドライブリストを取得

### 1.1. スコープ
このAPIを実行するに

元記事を表示

Hello Worldからの復習 ~オーバーライド編~

##### お品書き
+ オーバーライドって?
+ オーバーライドとオーバーロードの違い
+ オーバーライドSample

—–

オーバーライドって?

サブクラスでスーパークラスのメソッドを再定義することを
**オーバーライド**という。
オーバーライドとは「上書き」という意味の英単語

**▲条件**

::: note
**戻り値の型、メソッド名、引数の型と数が全て同じ**
:::
これが全てそろってはじめて上書きが出来る。

“`java:例
class Person{
void display(){
.
.
}
}

calss Student extendes Person{
void display(){
.
.
}
}

“`

“`java:例2
Student stu = new Student();
stu.display();
“`

“`mermaid
flowchart LR
subgraph Student
Stu
end
subgraph オブジェ

元記事を表示

Hello Worldからの復習 ~継承編~

##### お品書き
+ 継承って?
+ メリット
+ 注意点
+ Sample

—–
◆継承って?

既存のクラスを基に変数やメソッドを追加したクラスを作る。
継承関係にあるのクラスを**スーパークラス**、
子のクラスを**サブクラス**という。

元々あるクラスと機能追加をした新しいクラスの2つがあるってことね。

“`mermaid
flowchart LR
subgraph SubClass
a(Teacher) — b(Student)
end

subgraph SuperClass
c(Person)
end

SubClass –> SuperClass

“`
Personクラスは「人」のクラスということで「人」が共通して持っている情報、名前などを扱う変数やメソッドを定義しておく。
SubClassはPersonクラスを継承することを考える。

どゆことか。

Personクラスが持っているメンバー変数やメソッドを同じように使えるということ。
さらに、各クラ

元記事を表示

[Google Drive API v3] JavaでDriveのファイルの情報を取得する

Google Drive API v3(Java)を使用して、
Driveに置かれているファイルの情報を取得する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[ファイルリストを取得](#1-ファイルリストを取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|
|2||[ファイルの情報を取得](#2-ファイルの情報を取得)|
||1|[スコープ](#21-スコープ)|
||2|[実行](#22-実行)|
||3|[レスポンスの内容](#23-レスポンスの内容)|
|3||[ファイルのラベルを取得](#3-ファイルのラベルを取得)|
||1|[スコー

元記事を表示

JFormDesigner java_form_デザイナー Swing で動かす

C# 探していたのや ![スクリーンショット 2024-03-03 193115.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3625232/91e281d6-23fb-1ddf-9859-d3c03e971549.png)
入れんし、デザイナー別のError出して、使えんくしてくれたから、VSの気持ちは、よーくわかった。

C#別の角度からトライしてみる。VSには、要らん子やし。
で、なんやらしていて、フォームの書き出し出来るの見つけたのです。
https://www.formdev.com/jformdesigner/

![スクリーンショット 2024-03-10 211403.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3625232/1c663305-d376-ba70-911e-92ca5ec3aa36.png)
![スクリーンショット 2024-03-10 211500.png](https://qii

元記事を表示

Salesforce認定アドミニストレーターを受験することになったから過去問を解いてアウトプットしていこうと思う。Q1 ~ Q10

4月の頭にSalesforce認定アドミニストレーター資格試験を受験することになったので, 過去問を解いて, そのアウトプットというかメモがわりに執筆していこうと思う.

# Q1. Salesforceのレポート機能を使用して, 営業チームが顧客エンゲージメントの効果を分析するために, 管理者が設定することが推奨されるレポートタイプとは?
A: キャンペーンレポート
### 解説
キャンペーンレポートは, マーケティング活動を通じた顧客エンゲージメントの効果を分析し, どのキャンペーンが最も効果的であったか, どのようにリードが生成されたかを管理するのに最適なツールである.
よって, 設問の答えは「キャンペーンレポート」.

# Q2. システム管理者は, ログイン試行の失敗が特定の回数を超えた場合に, Salesforce組織からユーザーをロックアウトすることは可能か?
A: 可能
### 解説
システム管理者は「パスワードポリシー」の設定を通じて, ログイン試行の失敗が特定の回数を超えた場合にユーザーをSalesforce組織からロックアウトする機能を有効にすることができる.

元記事を表示

【Java、kotlin】UTC(文字列)からJST(文字列)に変換

世界中どこでも一定なunix時間(UTCの1970/1/1からの経過時間)を噛ませて変換する。
“` Test.kt
/**
* UTC(オフセット付)の文字列から、日本時間に変換する
*/
val utcStr = “2022-06-01T06:00:30Z”

val utcWithOffset = OffsetDateTime.parse(utcStr)
val unixtime = utcWithOffset.toEpochSecond()

// オフセット(+09:00 とか)も出したい場合
val jstWithOffset = OffsetDateTime.ofInstant(
Instant.ofEpochSecond(unixtime),
ZoneId.of(“Asia/Tokyo”)
).toString()
println(jstWithOffset) // 2022-06-01T15:00+09:00

// オフセットはいらない場合
val jst = LocalDateTime.ofInstant(
Instant.ofEpo

元記事を表示

[Google Drive API v3] JavaでDriveにインストールされているアプリの情報を取得する

Google Drive API v3(Java)を使用して、
Driveにインストールされているアプリの情報を取得する方法
についてご紹介します。
アプリとは、「Google スライド」、「Google 図形描画」、「Google フォーム」、
「Google Apps Script」、「Google スプレッドシート」などのことを指します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[アプリリストを取得](#1-アプリリストを取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|
|2||[アプリの情報を取得](#2-アプリの情報を取得)|
||1|[スコープ](#21

元記事を表示

Java8以降でBasic認証を復活させるオプション

# Eclipseオプション
Eclipseでプロキシの認証が通過しないと思っていたら、Java8以降ではデフォルトでBasic認証が無効になっているとのこと。
復活させるにはJavaのVM引数にオプションを追加する。
Eclipseでプロキシを有効にするには、eclipse.iniに追加する。
“`properties:eclipse.ini
-Djdk.http.auth.tunneling.disabledSchemes=””

“`

元記事を表示

Spring BootとRabbitMQを使用してメッセージングシステムを構築してみた

## RabbitMQとは?

オープンソースのメッセージ指向ミドルウェア(MOM)で、メッセージングシステムを構築するために使用できる。

## Dockerを使用してRabbitMQをセットアップする

① DockerDesktopを開き、DockerImageのDockerContainerに移動する

② DockerHubからRabbitmq DockerImageをプルする

[DockerHub](https://hub.docker.com/)

③teminalでインストールする
“`
docker pull rabbitmq:3.10.5-management
“`
④DockerのImage rabbitmqの『Run』をクリックし、Imageを起動する

“`
docker run –rm -it -p 15672:15672 -p 5672:5672 rabbitmq:3.10.5-management
“`
⑤lacalhost:15672を確認する

## 参考サイト
[Spring Boot RabbitMQ Tutorial | Cons

元記事を表示

配列の生成・初期化コストを低減するテクニック

# 概要
本記事では、プログラミング言語で配列の生成・初期化コストを低減する方法について説明します。言語はJavaで説明しますが、他の言語でも考え方は通用すると思います。
タイトル詐欺的なところがあるかもしれないので予めお断りしておきますと、基本的には一度作った配列を使い回すという至極当たり前な方法なのですが、使い回す際の工夫によって、初期値を配列全体に設定するコストを低減することができる、という内容になります。

# モチベーション
競技プログラミングなどで最短経路問題を解く時に、ダイクストラ法や01BFS等を使うために各頂点までの距離を保持する用の配列を用意することがあると思います。以下のようなコードで`dist`に当たる変数です。

“`Java
int[] dist = new int[N];
Arrays.fill(dist, Integer.MAX_VALUE);
dist[0] = 0;
ArrayDeque queue = new ArrayDeque<>();
queue.add(0);
while ( queue.size() > 0 ) {

元記事を表示

[Google Drive API v3] Javaでユーザーとドライブ、システムに関する情報を取得する

Google Drive API v3(Java)を使用して、
ユーザーとドライブ、システムに関する情報を取得する方法
についてご紹介します。

:::note info
APIを利用する環境の準備から始める場合や、コードを実行する際は、
[⧉[Google Drive API v3] JavaでDrive APIを使う](https://qiita.com/doran/items/15b2c59adb410ddeeb8a)
を参照ください。
:::

|No||目次|
|—|—|—|
|1||[ユーザー、ドライブ、システム情報の取得](#1-ユーザードライブシステム情報の取得)|
||1|[スコープ](#11-スコープ)|
||2|[実行](#12-実行)|
||3|[レスポンスの内容](#13-レスポンスの内容)|

## 1. ユーザー、ドライブ、システム情報の取得

### 1.1. スコープ
このAPIを実行するには、以下のいずれかのスコープを指定してください。

DriveScopes.DRIVE
DriveScopes.DRIVE_APPDATA
DriveS

元記事を表示

OTHERカテゴリの最新記事