20/11/2
静的キー
クラスメンバーに貼り付けられるキーワード.
1.メンバー変数
2.メンバーメソッド
同じフレーム(クラス)から印刷されたインスタンスが異なる値と共通の値を有する場合がある.
class SmartPhone{
// 개개인이 가지는 데이터(다양)
// 객체 멤버 변수 역할
private String model;
private String color;
private int price;
// 모든 객체가 가지는 공통된 데이터 -> 정적멤버
private static String manu; -> 정적 멤버변수
// static변수의 getter, setter는 static메서드로 만든다.
public static String getManu() {
return manu;
}
public static void setManu(String manu) {
SmartPhone.manu = manu;
}
}
...
public static void main(String[] args) {
// 핸드폰 3대
SmartPhone.setManu("삼성");
System.out.println(SmartPhone.getManu());
メモリからstatic(!図面)にアクセス
静的使用せいてきしよう:作成から数世紀
...
public static void main(String[] args) {
Robot r1=new Robot();
Robot r2=new Robot();
Robot r3=new Robot();
System.out.printf("총 개수 : %d개\n", Robot.count);
}
}
// 로봇장난감 클래스
class Robot{
private String name;
public static int count; // 편의상 public으로.
public Robot() {
Robot.count++;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
小包
クラスのコレクションの管理(物理フォルダ)
クラス管理、クラス用途の明確化
パッケージネーミング
ドメイン
たとえば,NAVERで開発したjavaコードパッケージはcomである.naver.xxxはこのように命名された.△グーグルの場合はcom.google.xxxを使用してください.
パッケージの役割
コースは異なり、クラス名を繰り返すことができます.他のパッケージのクラスを使用する場合は、インポートする必要があります。
クラス名が重なると、まず現在のパッケージのクラス名が取得されます.他のパッケージのクラス名を使用する場合は、クラスの前にパッケージ名全体を書くことができます.ただし、importは同じ項目内のパケット(クラス)しか認識できません.SmartPhone s1=new SmartPhone(); // 같은 패키지 내에
com.test.aaa.SmartPhone s2=new com.test.aaa.SmartPhone(); // aaa패키지 내에
継承
クラスとクラスの間で、クラスが持つコード(メンバー変数、メンバーメソッド)の動作を継承します.親が持つコードを子に渡します.
なぜ継承するのか。
コードを再使用するために.
乱数ジェネレータ
Math.random()random()メソッド形式
Random()Random()クラスシェイプ
private static void m1() {
Random rnd=new Random();
System.out.println(rnd.nextInt()); // int범위 내에서 발생
System.out.println(rnd.nextInt(10)); // 0~9범위 내에서 발생.
}
Objectクラス
java.lang(javaベースパッケージ)にあります.ルートクラス(すべてのクラスの親)
抽象クラス&抽象メソッド
抽象クラス
ひと組一般クラスの目的はオブジェクトを生成することであり,抽象クラスの目的はオブジェクトの動作を標準化することである.(オブジェクトを作成できません)継承関係では、クラスの親ロールが可能です.子供たちに抽象的な方法を強制的に作成させたい.抽象クラスのサブクラスは同じ方法を使用します.
abstract class Monitor{ // 추상클래스의 선언
}
抽象メソッド
抽象クラスで抽象メソッドを宣言した後、その抽象クラスを継承するクラスは抽象メソッドを実装する必要があります.
abstract class Monitor{
// 멤버 구현
public String model;
public int price;
// 추상메서드 선언
public abstract void on();
public abstract void off();
}
class LG100 extends Monitor{
public void on(){
System.out.println("전원 On");
}
public void off(){
System.out.println("전원 Off");
}
}
Reference
この問題について(20/11/2), 我々は、より多くの情報をここで見つけました https://velog.io/@ara_velog/20112テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol