logo

Objekti un klases Java valodā

  1. Objekts Java valodā
  2. Klase Java valodā
  3. Instanču mainīgais Java
  4. Metode Java valodā
  5. Objekta un klases piemērs, kas uztur studentu ierakstus
  6. Anonīms objekts

Šajā lapā mēs uzzināsim par Java objektiem un klasēm. Objektorientētās programmēšanas tehnikā mēs izstrādājam programmu, izmantojot objektus un klases.

Java objekts ir gan fiziska, gan loģiska entītija, savukārt Java klase ir tikai loģiska entītija.

Kas ir objekts Java

objekts Java valodā

Entītija, kurai ir stāvoklis un uzvedība, ir pazīstama kā objekts, piemēram, krēsls, velosipēds, marķieris, pildspalva, galds, automašīna utt. Tā var būt fiziska vai loģiska (materiāla un nemateriāla). Nemateriāla objekta piemērs ir banku sistēma.

Objektam ir trīs īpašības:

    Valsts:apzīmē objekta datus (vērtību).Uzvedība:atspoguļo objekta uzvedību (funkcionalitāti), piemēram, noguldījumu, izņemšanu utt.Identitāte:Objekta identitāte parasti tiek ieviesta, izmantojot unikālu ID. ID vērtība nav redzama ārējam lietotājam. Tomēr JVM to iekšēji izmanto, lai unikāli identificētu katru objektu.
Objekta īpašības Java valodā

Piemēram, pildspalva ir objekts. Tā vārds ir Reinoldss; krāsa ir balta, kas pazīstama kā tās stāvoklis. To izmanto, lai rakstītu, tāpēc rakstīšana ir tā uzvedība.

Objekts ir klases gadījums. Klase ir veidne vai projekts, no kura tiek izveidoti objekti. Tātad objekts ir klases gadījums (rezultāts).

Objektu definīcijas:

  • Objekts ir reālās pasaules vienība .
  • Objekts ir izpildlaika entītija .
  • Objekts ir entītija, kurai ir stāvoklis un uzvedība .
  • Objekts ir klases gadījums .

Kas ir klase Java valodā

Klase ir objektu grupa, kam ir kopīgas īpašības. Tā ir veidne vai projekts, no kura tiek izveidoti objekti. Tā ir loģiska vienība. Tas nevar būt fiziski.

Java klasē var būt:

    Lauki Metodes Konstruktori Bloki Ligzdota klase un saskarne
Klase Java valodā

Sintakse klases deklarēšanai:

 class { field; method; } 

Instanču mainīgais Java

Mainīgais, kas tiek izveidots klasē, bet ārpus metodes, ir pazīstams kā instances mainīgais. Gadījuma mainīgais nesaņem atmiņu kompilēšanas laikā. Tas iegūst atmiņu izpildes laikā, kad tiek izveidots objekts vai gadījums. Tāpēc tas ir pazīstams kā instances mainīgais.


Metode Java valodā

Java valodā metode ir kā funkcija, ko izmanto, lai atklātu objekta uzvedību.

Metodes priekšrocības

  • Koda atkārtota izmantošana
  • Koda optimizācija

jauns atslēgvārds Java

Jaunais atslēgvārds tiek izmantots, lai izpildlaikā piešķirtu atmiņu. Visi objekti iegūst atmiņu Heap atmiņas apgabalā.


Objekta un klases piemērs: galvenais klasē

Šajā piemērā mēs esam izveidojuši Studentu klasi, kurā ir divi datu dalībnieku ID un nosaukums. Mēs veidojam Studentu klases objektu pēc jauna atslēgvārda un izdrukājam objekta vērtību.

Šeit mēs klasē izveidojam galveno () metodi.

Fails: Student.java

 //Java Program to illustrate how to define a class and fields //Defining a Student class. class Student{ //defining fields int id;//field or data member or instance variable String name; //creating main method inside the Student class public static void main(String args[]){ //Creating an object or instance Student s1=new Student();//creating an object of Student //Printing values of the object System.out.println(s1.id);//accessing member through reference variable System.out.println(s1.name); } } 
Izmēģiniet to tūlīt

Izvade:

 0 null 

Objekta un klases piemērs: galvenais ārpus klases

Reāllaika izstrādē mēs veidojam klases un izmantojam to no citas klases. Tā ir labāka pieeja nekā iepriekšējā. Apskatīsim vienkāršu piemēru, kur mums ir main() metode citā klasē.

java objektu vienlīdzība

Mums var būt vairākas klases dažādos Java failos vai vienā Java failā. Ja vienā Java avota failā definējat vairākas klases, ir ieteicams saglabāt faila nosaukumu ar klases nosaukumu, kam ir main() metode.

Fails: TestStudent1.java

 //Java Program to demonstrate having the main method in //another class //Creating Student class. class Student{ int id; String name; } //Creating another class TestStudent1 which contains the main method class TestStudent1{ public static void main(String args[]){ Student s1=new Student(); System.out.println(s1.id); System.out.println(s1.name); } } 
Izmēģiniet to tūlīt

Izvade:

 0 null 

3 veidi, kā inicializēt objektu

Ir 3 veidi, kā inicializēt objektu Java.

  1. Pēc atsauces mainīgā
  2. Pēc metodes
  3. Pēc konstruktora

1) Objekta un klases piemērs: inicializācija, izmantojot atsauci

Objekta inicializācija nozīmē datu saglabāšanu objektā. Apskatīsim vienkāršu piemēru, kurā mēs inicializējam objektu, izmantojot atsauces mainīgo.

Fails: TestStudent2.java

 class Student{ int id; String name; } class TestStudent2{ public static void main(String args[]){ Student s1=new Student(); s1.id=101; s1.name='Sonoo'; System.out.println(s1.id+' '+s1.name);//printing members with a white space } } 
Izmēģiniet to tūlīt

Izvade:

 101 Sonoo 

Mēs varam arī izveidot vairākus objektus un saglabāt tajos informāciju, izmantojot atsauces mainīgo.

Fails: TestStudent3.java

ko nozīmē xd
 class Student{ int id; String name; } class TestStudent3{ public static void main(String args[]){ //Creating objects Student s1=new Student(); Student s2=new Student(); //Initializing objects s1.id=101; s1.name='Sonoo'; s2.id=102; s2.name='Amit'; //Printing data System.out.println(s1.id+' '+s1.name); System.out.println(s2.id+' '+s2.name); } } 
Izmēģiniet to tūlīt

Izvade:

 101 Sonoo 102 Amit 

2) Objekta un klases piemērs: inicializācija, izmantojot metodi

Šajā piemērā mēs izveidojam divus Studentu klases objektus un inicializējam šo objektu vērtību, izsaucot metodi insertRecord. Šeit mēs parādām objektu stāvokli (datus), izsaucot metodi displayInformation ().

Fails: TestStudent4.java

 class Student{ int rollno; String name; void insertRecord(int r, String n){ rollno=r; name=n; } void displayInformation(){System.out.println(rollno+' '+name);} } class TestStudent4{ public static void main(String args[]){ Student s1=new Student(); Student s2=new Student(); s1.insertRecord(111,'Karan'); s2.insertRecord(222,'Aryan'); s1.displayInformation(); s2.displayInformation(); } } 
Izmēģiniet to tūlīt

Izvade:

 111 Karan 222 Aryan 
Objekts Java ar vērtībām

Kā redzat iepriekš attēlā, objekts iegūst atmiņu kaudzes atmiņas apgabalā. Atsauces mainīgais attiecas uz objektu, kas piešķirts kaudzes atmiņas apgabalā. Šeit gan s1, gan s2 ir atsauces mainīgie, kas attiecas uz atmiņā piešķirtajiem objektiem.


3) Objekta un klases piemērs: inicializācija, izmantojot konstruktoru

Par Java konstruktoriem mēs uzzināsim vēlāk.


Objekta un klases piemērs: Darbinieks

Apskatīsim piemēru, kur mēs veicam darbinieku uzskaiti.

Fails: TestEmployee.java

 class Employee{ int id; String name; float salary; void insert(int i, String n, float s) { id=i; name=n; salary=s; } void display(){System.out.println(id+' '+name+' '+salary);} } public class TestEmployee { public static void main(String[] args) { Employee e1=new Employee(); Employee e2=new Employee(); Employee e3=new Employee(); e1.insert(101,'ajeet',45000); e2.insert(102,'irfan',25000); e3.insert(103,'nakul',55000); e1.display(); e2.display(); e3.display(); } } 
Izmēģiniet to tūlīt

Izvade:

 101 ajeet 45000.0 102 irfan 25000.0 103 nakul 55000.0 

Objekta un klases piemērs: Taisnstūris

Ir dots vēl viens piemērs, kas uztur taisnstūra klases ierakstus.

Fails: TestRectangle1.java

 class Rectangle{ int length; int width; void insert(int l, int w){ length=l; width=w; } void calculateArea(){System.out.println(length*width);} } class TestRectangle1{ public static void main(String args[]){ Rectangle r1=new Rectangle(); Rectangle r2=new Rectangle(); r1.insert(11,5); r2.insert(3,15); r1.calculateArea(); r2.calculateArea(); } } 
Izmēģiniet to tūlīt

Izvade:

 55 45 

Kādi ir dažādi veidi, kā izveidot objektu Java?

Ir daudz veidu, kā izveidot objektu Java. Viņi ir:

  • Pēc jauna atslēgvārda
  • Ar newInstance() metodi
  • Ar klona() metodi
  • Ar deserializāciju
  • Pēc rūpnīcas metodes utt.

Mēs uzzināsim šos veidus, kā izveidot objektu vēlāk.

Dažādi veidi, kā izveidot objektu Java

Anonīms objekts

Anonīms vienkārši nozīmē bezvārda. Objektu, kuram nav atsauces, sauc par anonīmu objektu. To var izmantot tikai objekta izveides laikā.

Ja objekts ir jāizmanto tikai vienu reizi, anonīms objekts ir laba pieeja. Piemēram:

 new Calculation();//anonymous object 

Zvanīšanas metode, izmantojot atsauci:

 Calculation c=new Calculation(); c.fact(5); 

Zvanīšanas metode caur anonīmu objektu

 new Calculation().fact(5); 

Apskatīsim pilnu Java anonīma objekta piemēru.

 class Calculation{ void fact(int n){ int fact=1; for(int i=1;i<=n;i++){ fact="fact*i;" } system.out.println('factorial is '+fact); public static void main(string args[]){ new calculation().fact(5); calling method with anonymous object < pre> <p>Output:</p> <pre> Factorial is 120 </pre> <a id="objectbyonetype"></a> <h3>Creating multiple objects by one type only</h3> <p>We can create multiple objects by one type only as we do in case of primitives.</p> <p>Initialization of primitive variables:</p> <pre> int a=10, b=20; </pre> <p>Initialization of refernce variables:</p> <pre> Rectangle r1=new Rectangle(), r2=new Rectangle();//creating two objects </pre> <p>Let&apos;s see the example:</p> <pre> //Java Program to illustrate the use of Rectangle class which //has length and width data members class Rectangle{ int length; int width; void insert(int l,int w){ length=l; width=w; } void calculateArea(){System.out.println(length*width);} } class TestRectangle2{ public static void main(String args[]){ Rectangle r1=new Rectangle(),r2=new Rectangle();//creating two objects r1.insert(11,5); r2.insert(3,15); r1.calculateArea(); r2.calculateArea(); } } </pre> <span> Test it Now </span> <p>Output:</p> <pre> 55 45 </pre> <h3>Real World Example: Account</h3> <p>File: TestAccount.java</p> <pre> //Java Program to demonstrate the working of a banking-system //where we deposit and withdraw amount from our account. //Creating an Account class which has deposit() and withdraw() methods class Account{ int acc_no; String name; float amount; //Method to initialize object void insert(int a,String n,float amt){ acc_no=a; name=n; amount=amt; } //deposit method void deposit(float amt){ amount=amount+amt; System.out.println(amt+&apos; deposited&apos;); } //withdraw method void withdraw(float amt){ if(amount <amt){ system.out.println('insufficient balance'); }else{ amount="amount-amt;" system.out.println(amt+' withdrawn'); } method to check the balance of account void checkbalance(){system.out.println('balance is: '+amount);} display values an object display(){system.out.println(acc_no+' '+name+' creating a test class deposit and withdraw testaccount{ public static main(string[] args){ a1="new" account(); a1.insert(832345,'ankit',1000); a1.display(); a1.checkbalance(); a1.deposit(40000); a1.withdraw(15000); }} < pre> <span> Test it Now </span> <p>Output:</p> <pre> 832345 Ankit 1000.0 Balance is: 1000.0 40000.0 deposited Balance is: 41000.0 15000.0 withdrawn Balance is: 26000.0 </pre></amt){></pre></=n;i++){>

Vairāku objektu izveide tikai pēc viena veida

Mēs varam izveidot vairākus objektus tikai pēc viena veida, tāpat kā primitīvu gadījumā.

Primitīvo mainīgo inicializācija:

 int a=10, b=20; 

Atsauces mainīgo inicializācija:

 Rectangle r1=new Rectangle(), r2=new Rectangle();//creating two objects 

Apskatīsim piemēru:

 //Java Program to illustrate the use of Rectangle class which //has length and width data members class Rectangle{ int length; int width; void insert(int l,int w){ length=l; width=w; } void calculateArea(){System.out.println(length*width);} } class TestRectangle2{ public static void main(String args[]){ Rectangle r1=new Rectangle(),r2=new Rectangle();//creating two objects r1.insert(11,5); r2.insert(3,15); r1.calculateArea(); r2.calculateArea(); } } 
Izmēģiniet to tūlīt

Izvade:

 55 45 

Reālās pasaules piemērs: konts

Fails: TestAccount.java

 //Java Program to demonstrate the working of a banking-system //where we deposit and withdraw amount from our account. //Creating an Account class which has deposit() and withdraw() methods class Account{ int acc_no; String name; float amount; //Method to initialize object void insert(int a,String n,float amt){ acc_no=a; name=n; amount=amt; } //deposit method void deposit(float amt){ amount=amount+amt; System.out.println(amt+&apos; deposited&apos;); } //withdraw method void withdraw(float amt){ if(amount <amt){ system.out.println(\'insufficient balance\'); }else{ amount="amount-amt;" system.out.println(amt+\' withdrawn\'); } method to check the balance of account void checkbalance(){system.out.println(\'balance is: \'+amount);} display values an object display(){system.out.println(acc_no+\' \'+name+\' creating a test class deposit and withdraw testaccount{ public static main(string[] args){ a1="new" account(); a1.insert(832345,\'ankit\',1000); a1.display(); a1.checkbalance(); a1.deposit(40000); a1.withdraw(15000); }} < pre> <span> Test it Now </span> <p>Output:</p> <pre> 832345 Ankit 1000.0 Balance is: 1000.0 40000.0 deposited Balance is: 41000.0 15000.0 withdrawn Balance is: 26000.0 </pre></amt){>