객체 지향 언어로서의 Java. 다음 기본 개념을 지원합니다.
• 다형성
• 상속
• 포장
•추상적인
•친절한
•물체
•예
•방법
• 메시지 파싱
이 섹션에서는 객체와 클래스의 개념에 중점을 둡니다.
• 개체 : 객체는 클래스의 인스턴스이며, 상태가 있고 행동 적입니다. 예를 들어, 개는 다음과 같은 대상입니다. 색상, 이름, 품종; 행동에는 다음이 포함됩니다 : 꼬리를 흔들고, 전화, 식사 등
• 클래스 : 클래스는 객체 클래스의 동작과 상태를 설명하는 템플릿입니다.
자바의 물체
이제 대상이 무엇인지 파헤 봅시다. 주변의 현실 세계를 보면 주변, 자동차, 개, 사람 등 주위에 많은 물건이 있다는 것을 알게 될 것입니다.이 모든 대상에는 자신의 상태와 행동이 있습니다.
개를 예로 들으십시오. 그 주에는 이름, 품종, 색상 및 행동에는 다음이 포함됩니다 : 고함, 흔들리는 꼬리 및 달리기가 포함됩니다.
실제 객체와 소프트웨어 객체를 비교하면 매우 유사합니다.
소프트웨어 객체에는 상태와 행동도 있습니다. 소프트웨어 객체의 상태는 속성이며 동작은 방법을 통해 반영됩니다.
소프트웨어 개발에서 메소드는 내부 객체 상태의 변경 사항에서 작동하며, 객체에 대한 상호 호출도 방법을 통해 완료됩니다.
자바 수업
클래스는 Java 객체를 만드는 템플릿으로 간주 될 수 있습니다.
Java의 클래스의 정의를 이해하려면 다음 간단한 클래스를 사용하십시오.
공공 계급 개 {문자열 품종; int 연령; 문자열 색상; void barking () {} void Hungry () {} void sleeping () {}}클래스는 다음 유형 변수를 포함 할 수 있습니다.
• 로컬 변수 : 메소드, 생성자 또는 명령문 블록에 정의 된 변수를 로컬 변수라고합니다. 변수 선언 및 초기화는 모두 방법에 있습니다. 메소드가 완료되면 변수가 자동으로 파괴됩니다.
• 멤버 변수 : 멤버 변수는 클래스와 메소드 본문 외부에서 정의 된 변수입니다. 이 변수는 객체를 만들 때 인스턴스화됩니다. 클래스에서 메소드, 생성자 및 명령문 블록으로 구성원 변수에 액세스 할 수 있습니다.
• 클래스 변수 : 클래스 변수는 클래스에서 방법의 본문 외부에서 선언되지만 정적 유형으로 선언해야합니다.
클래스에는 여러 가지 방법이있을 수 있습니다. 위의 예에서 : Barking (), Hungry () 및 Sleeping ()은 개 클래스의 모든 방법입니다.
건축 방법
각 클래스에는 생성자가 있습니다. 생성자가 클래스에 대해 명시 적으로 정의되지 않은 경우 Java 컴파일러는 클래스의 기본 생성자를 제공합니다.
객체를 만들 때 적어도 하나의 생성자를 호출해야합니다. 생성자의 이름은 클래스와 동일해야하며 클래스는 여러 생성자를 가질 수 있습니다.
다음은 생성자의 예입니다.
공개 클래스 강아지 {public puppy () {} public puppy (문자열 이름) {//이 생성자는 하나의 매개 변수 만 있습니다 : name}}객체를 만듭니다
객체는 수업에서 생성됩니다. Java에서는 새로운 키워드를 사용하여 새 개체를 만듭니다. 객체 생성은 다음 세 단계가 필요합니다.
• 선언 : 객체 이름 및 객체 유형을 포함한 객체를 선언합니다.
• 인스턴스화 : 새로운 키워드를 사용하여 개체를 만듭니다.
• 초기화 : 새로 사용하여 개체를 만들 때 생성자 메소드가 호출되어 객체를 초기화합니다.
다음은 개체를 만드는 예입니다.
공개 클래스 강아지 {public puppy (문자열 이름) {//이 생성자는 하나의 매개 변수 만 있습니다 : name system.out.println ( "전달 된 이름은 :" + name); } public static void main (String [] args) {// 다음 문장은 강아지 객체 강아지 mypuppy = new Puppy ( "Tommy")를 만듭니다. }}위의 프로그램을 컴파일하고 실행하면 다음 결과가 인쇄됩니다.
통과 된 이름은 : Tommy
인스턴스 변수 및 메소드에 액세스합니다
다음과 같이 생성 된 개체를 통해 멤버 변수 및 멤버 메소드에 액세스하십시오.
/* 인스턴스형 개체*/objectreference = 새 생성자 (); /* 변수에 액세스하십시오*/objectreference.variabelename; /* 클래스에서 메소드에 액세스하십시오*/objectreference.methodName ();다음 예제는 인스턴스 변수에 액세스하고 멤버 메소드를 호출하는 방법을 보여줍니다.
공개 수업 강아지 {int puppyage; public puppy (문자열 이름) {//이 생성자는 하나의 매개 변수 만 있습니다 : name system.out.println ( "전달 된 이름은 :" + name); } public void setage (int age) {uppyage = age; } public int getage () {System.out.println ( "강아지의 나이는" + uppyage); 강아지를 반환하십시오. } public static void main (String [] args) { /* 물체 생성* / puppy mypuppy = new Puppy ( "Tommy"); / * 방법별로 연령을 설정 */ myPuppy.setage (2); / * 나이를 얻기 위해 다른 방법을 호출하십시오 */ myPuppy.getage (); / * 다음 */ system.out.println과 같은 멤버 변수에 액세스 할 수도 있습니다 ( "변수 값 :" + mypuppy.puppyage); }}위 프로그램을 컴파일하고 실행하고 다음 결과를 생성하십시오.
통과 된 이름은 : Tommy
강아지의 나이는 : 2입니다
가변 값 : 2
소스 파일 선언 규칙
이 섹션의 마지막 부분에서는 소스 파일의 선언 규칙에 대해 알게됩니다. 소스 파일에서 여러 클래스를 정의하고 구상 명령문 및 패키지 명령문이있을 때이 규칙에 특별한주의를 기울이십시오.
• 소스 파일에는 하나의 공개 클래스 만있을 수 있습니다.
• 소스 파일에는 여러 비공개 클래스가있을 수 있습니다
• 소스 파일의 이름은 공개 클래스의 클래스 이름과 일치해야합니다. 예를 들어 : 소스 파일의 공개 클래스의 클래스 이름은 직원이므로 소스 파일의 이름은 Employee.java입니다.
• 클래스가 패키지에 정의 된 경우 패키지 문은 소스 파일의 첫 번째 줄에 있어야합니다.
• 소스 파일에 가져 오기 명령문이 포함 된 경우 패키지 문과 클래스 정의 사이에 배치해야합니다. 패키지 명령문이 없으면 가져 오기 명령문은 소스 파일 앞면에 있어야합니다.
• 가져 오기 명령문 및 패키지 명령문은 소스 파일에 정의 된 모든 클래스에 유효합니다. 동일한 소스 파일에서 다른 패키지 선언은 다른 클래스에 제공 될 수 없습니다.
클래스에는 몇 가지 액세스 수준이 있으며 클래스는 초록 클래스 및 최종 클래스 등 다양한 유형으로 나뉩니다. 이는 액세스 제어 섹션에 설명됩니다.
위에서 언급 한 유형 외에도 Java에는 내부 클래스 및 익명 수업과 같은 특수 클래스가 있습니다.
자바 패키지
패키지는 주로 클래스와 인터페이스를 분류하는 데 사용됩니다. Java 프로그램을 개발할 때 수백 개의 수업이 작성 될 수 있으므로 클래스와 인터페이스를 분류해야합니다.
수입 명세서
Java에서는 패키지 이름 및 클래스 이름을 포함하여 완전한 자격을 갖춘 이름이 제공되면 Java 컴파일러는 소스 코드 또는 클래스를 쉽게 찾을 수 있습니다. 가져 오기 명령문은 컴파일러가 특정 클래스를 찾을 수 있도록 합리적인 경로를 제공하는 데 사용됩니다.
예를 들어, 다음 명령 줄은 컴파일러에 java_installation/java/io 경로에 따라 모든 클래스를로드하도록 명령합니다.
java.io.*;
간단한 예
이 예에서는 직원과 Employeetest의 두 가지 클래스를 만듭니다.
먼저 텍스트 편집기를 열고 다음 코드를 붙여 넣습니다. 파일을 Employee.java로 저장하십시오.
직원 클래스에는 이름, 연령, 지정 및 급여의 네 가지 멤버 변수가 있습니다. 이 클래스는 매개 변수가 하나만있는 생성자를 명시 적으로 선언합니다.
java.io.*; 공개 클래스 직원 {문자열 이름; int 연령; 문자열 명칭; 이중 급여; // 직원 클래스의 생성자 공공 직원 (문자열 이름) {this.name = 이름; } // 연령의 가치를 설정하여 공개 void empage (int empage) {age = empage; } /* 지정 값을 설정* / public void empdesignation (String empdesig) {rightation = empdesig; } /* 급여의 가치 설정* / public void empsalary (double empsalary) {Salary = empsalary; } /* 인쇄 정보* / public void printemployee () {System.out.println ( "이름 :"+ name); System.out.println ( "Age :" + age); System.out.println ( "지정 :" + 지정); System.out.println ( "급여 :" + 급여); }}프로그램은 주요 방법으로 시작합니다. 이 프로그램을 실행하려면 기본 메소드를 포함하고 인스턴스 객체를 작성해야합니다.
다음은 Employeetest 클래스이며 직원 클래스의 2 인스턴스를 인스턴스하고 변수의 값을 설정하기 위해 메소드를 호출합니다.
Employeetest.java 파일에 다음 코드를 저장하십시오.
java.io.*; 공개 클래스 Employeetest {public static void main (String args []) { /* 생성자를 사용하여 두 개의 객체 생성* / Employee empone = 새로운 직원 ( "James Smith"); Employee emptwo = 신입 사원 ( "Mary Anne"); //이 두 개체의 멤버 메소드를 호출 empone.empage (26); empone.empdesignation ( "Senior Software Engineer"); Empone.empsalary (1000); empone.printemployee (); emplwo.empage (21); emplwo.empdesignation ( "소프트웨어 엔지니어"); emptwo.empsalary (500); emplwo.printemployee (); }}이 두 파일을 컴파일하고 Employeetest 클래스를 실행하면 다음 결과를 볼 수 있습니다.
C :> Javac Employee.java C :> vi Employeetest.java C :> Javac Employeetest.java C :> Java Employeetest 이름 : James Smith Age : 26 Designation : Senior Software Engineer Salary : 1000.0name : Mary Anne Age : 21Designation : 소프트웨어 엔지니어 급여 : 500.0
위의 기사는 Java 객체와 클래스를 깊이 이해하고 있습니다. 내가 당신과 공유 한 모든 콘텐츠입니다. 나는 그것이 당신에게 참조를 줄 수 있기를 바랍니다. 그리고 당신이 wulin.com을 더 지원할 수 있기를 바랍니다.