Javaクラスとオブジェクト
18878 ワード
1.オブジェクト(Object)
:対象は現実世界に存在するすべてのものであってもよい.
=
객체지향 프로그래밍 (OOP, Object Oriented Programming)
2.クラス(Class)
オブジェクトのプロパティと機能をコードで実現します.
オブジェクトを作成するフレームワーク(Framework for Object)とみなすことができます.
1)クラス定義
例)自動車クラスの作成
=>
변수
、=>
메서드
、class Car{
// 속성(필드) : 멤버 변수(member variable)
String name;
String maker;
int year;
double price;
// 기능 : 메서드(method)
void start() {
System.out.println("출발");
}
void stop() {
System.out.println("멈춤");
}
(1)メンバー変数
:クラスで宣言されたオブジェクトのプロパティを表す変数
(2)方法
:クラスでメンバー変数を使用してクラスを実装する機能
メソッドの定義
:
반환형
메소드이름 (매개변수)
{ }
return値がない方法では、
void
が返されます.(3)ローカル変数
:メソッドの内部
{}
/メソッドのパラメータ()
/コンストラクション関数のパラメータとして()
内部で宣言された変数2)クラスによるオブジェクトの作成
(1)例
実際に使用可能なクラス.
クラスを使用して作成されたオブジェクト=インスタンス
자료형(클래스형)
변수이름
= new
생성자
; public class Student { // 클래스 정의
// 멤버변수
int studentID;
String studentName;
int grade;
String address;
// 메서드
public String getStudentName() {
return studentName;
}
public void setStudentName(String name) {
studentName = name;
}
// main함수 : Java Virtual Machine이 프로그램을 시작하기 위해 호출하는 함수.
// 클래스 내부에 만들긴 하지만 클래스의 메서드는 아님
public static void main(String[] args) {
// 객체 생성
Student student1 = new Student();
Student student2 = new Student();
// 클래스를 참조하는 참조변수를 통해 멤버변수와 메서드 호출
student1.studentName = "김철수";
student2.studentName = "홍길동";
System.out.println(student1.getStudentName()); // 김철수 출력
}
}
3)コンストラクタ
オブジェクトを作成するときに使用される関数です.
(1)デフォルトコンストラクタ
(2)直接実施ジェネレータ
椺主にメンバー変数の値をパラメータとし、オブジェクト(インスタンス)の作成時にメンバー変数の値の反転を初期化する
(3)ロードコンストラクタリロード(コンストラクタリロード)
必要に応じてジェネレータ
public class Student {
// 멤버변수
int studentID;
String studentName;
int grade;
String address;
// 기본 생성자
Student(){};
// 직접 구현한 생성자 (멤버변수 studentID의 값을 초기화)
Student(int id){
studentID = id;
}
// 메서드
public String getStudentName() {
return studentName;
}
public void setStudentName(String name) {
studentName = name;
}
public static void main(String[] args) {
// 클래스 생성 - 기본생성자 사용
Student student1 = new Student();
// 클래스 생성 - 직접 구현한 생성자 사용
Student student2 = new Student(123);
System.out.println(student2.studentID); // 123 호출
}
}
ジェネレータのオーバーロードの概念を理解する💡 メソッドオーバーロード
public class Test {
static void testMethod(int i) {
System.out.println("int call");
}
static void testMethod(float f) {
System.out.println("float call");
}
public static void main(String[] args) {
int a = 1;
float b = 1.1;
testMethod(a); // "int call"
testMethod(b); // "float call"
}
3.参考資料型
:クラスをデータソース(クラスの変数を参照)
各科目の属性を変数として追加すると効率が低下し,
Subject형 변수
を宣言するSubjectというクラスが作成される.// Subject 클래스 만들기
public class Subject {
String subjectName;
int subjectScore;
}
public class Student {
int studentID;
String studentName;
// Subject형 변수 선언
Subject subject;
void setSubject(String name, int score) {
this.subject = new Subject(); // Subject 객체를 생성해야 사용할 수 있음
subject.subjectName = name;
subject.subjectScore = score;
}
public static void main(String[] args) {
Student student1 = new Student();
student1.setSubject("math", 90);
System.out.println(student1.subject.subjectName); // math 출력
}
}
String
はjavaである.ラングセットの中のランクですReference
この問題について(Javaクラスとオブジェクト), 我々は、より多くの情報をここで見つけました https://velog.io/@hmjang28/Java-클래스와-객체テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol