Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Доступ к переменным экземпляра и методам в Java




Доступ к переменным экземпляра и методам в Java

Переменные и методы доступны через созданные объекты. Чтобы получить доступ к переменной экземпляра, полный путь должен выглядеть следующим образом::

/* Сначала создайте объект */ ObjectReference = new Constructor(); /* Теперь вызовите переменную следующим образом */ ObjectReference. variableName; /* Теперь Вы можете вызвать метод класса */ObjectReference. MethodName();

Пример

Этот пример объясняет, как получить доступ к переменные экземпляра и методам класса в Java:

public class Puppy{    int puppyAge; public Puppy(String name){ // Это конструктор и у него один параметр, name. System. out. println(" Передаваемое имя: " + name );    } public void setAge( int age ){  puppyAge = age; } public int getAge( ){  System. out. println(" Возраст щенка: " + puppyAge );        return puppyAge; } public static void main(String []args){ /* Создание объекта. */ Puppy myPuppy = new Puppy( " Багет" ); /* Вызов метод класса, чтобы установить возраст щенка. */       myPuppy. setAge( 2 ); /* Вызов другого метода класса, чтобы получить возраст щенка. */ myPuppy. getAge( ); /* Получение переменной экземпляра класса. */ System. out. println(" Значение переменной: " + myPuppy. puppyAge );    }}

Если Вы скомпилируете и запустите выше программу, то она выдаст следующий результат:

Передаваемое имя: БагетВозраст щенка: 2Значение переменной: 2

Правила объявления классов, операторов импорта и пакетов в исходном файле

В последней части этого раздела давайте рассмотрим правила декларации исходного файла. Эти правила в Java имеют важное значение при объявлении классов, операторов импорта и операторов пакета в исходном файле.

· В исходном файле может быть только один публичный класс (public class).

· Исходный файл может иметь несколько " непубличных" классов.

· Название публичного класса должно совпадать с именем исходного файла, который должен иметь расширение. java в конце. Например: имя класса public class Employee{}, то исходный файл должен быть Employee. java.

· Если класс определен внутри пакета, то оператор пакет должно быть первым оператором в исходном файле.

· Если присутствуют операторы импорта, то они должны быть написаны между операторами пакета и объявлением класса. Если нет никаких операторов пакета, то оператор импорта должен быть первой строкой в исходном файле.

· Операторы импорта и пакета будут одинаково выполняться для всех классов, присутствующих в исходном файле. В Java не представляется возможным объявить различные операторы импорта и/или пакета к различным классам в исходном файле.

Классы имеют несколько уровней доступа и существуют различные типы классов: абстрактные классы (abstract class), конечные классы (final class) и т. д. Обо всем этом обсудим в уроке модификаторы доступа.

Помимо указанных выше типов классов, Java также имеет некоторые специальные классы, называемые внутренние (Inner class) и анонимные классы (Anonymous class).

 

Java пакет (package)

При разработке приложений сотни классов и интерфейсов будет написано, поэтому категоризации этих классов является обязательным, а также это делает жизнь намного проще.

Операторы импорта (import)

Если задать полное имя, которое включает в себя пакет и имя класса, то компилятор может легко найти исходный код или классы. В Java импорт это способ задать правильное место для компилятора, чтобы найти конкретный класс.

Например, следующая строка будет просить компилятор загрузить все классы, доступные в каталоге «java_installation/java/io»:

import java. io. *;

Простой пример по выше описанному

Для нашего обучения создадим два класса. Это будут классы Employee и EmployeeTest.

Для начала откройте блокнот и добавьте следующий код. Помните, что этот класс Employee является открытым или публичным классом. Теперь сохраните исходный файл с именем Employee. java.

Класс Employee имеет четыре переменных экземпляра name, age, designation и salary. Он имеет один явно определенный конструктор, который принимает параметр.

import java. io. *; public class Employee{ String name; int age; String designation; double salary;     // Это конструктор класса Employee.    public Employee(String name){ this. name = name; } // Присвоение возраста работника переменной age. public void empAge(int empAge){ age = empAge; } /* Присвоение переменной designation. */ public void empDesignation(String empDesig){ designation = empDesig; } /* Присвоение переменной salary. */ public void empSalary(double empSalary){ salary = empSalary; } /* Вывод подробной информации. */ public void printEmployee(){ System. out. println(" Имя: " + name ); System. out. println(" Возраст: " + age ); System. out. println(" Наименование: " + designation ); System. out. println(" Заработная плата: " + salary); }}

Как упоминалось выше, обработка начинается с основного метода. Поэтому для нас, чтобы запустить класс Employee, должен быть главный метод и созданные объекты. Создадим отдельный класс для этих задач.

Ниже приводится класс EmployeeTest, в котором создаются два экземпляра класса Employee и вызывают методы для каждого объекта, для присвоения значений каждой переменной.

Сохраните следующий код в файл «EmployeeTest. java»:

import java. io. *; public class EmployeeTest{ public static void main(String args[]){ /* Создание двух объектов с помощью конструктора. */ Employee empOne = new Employee(" Олег Олегов" ); Employee empTwo = new Employee(" Иван Иванов" ); // Вызов метода для каждого созданного объекта. empOne. empAge(26); empOne. empDesignation(" Старший инженер-программист" ); empOne. empSalary(1000); empOne. printEmployee(); empTwo. empAge(21); empTwo. empDesignation(" Инженер-программист" ); empTwo. empSalary(500); empTwo. printEmployee(); }}

Теперь, скомпилировав оба класса, запустим EmployeeTest и получим следующий результат:

C: > javac Employee. java C: > vi EmployeeTest. java C: > javac EmployeeTest. java C: > java EmployeeTest Имя: Олег Олегов Возраст: 26 Наименование: Старший инженер-программист Заработная плата: 1000. 0 Имя: Иван ИвановВозраст: 21 Наименование: Инженер-программист Заработная плата: 500. 0

В следующем уроке обсудим основные типы данных, и как они могут быть использованы при разработке java-приложений.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...