Я пытаюсь получить лучшее понимание, чем я мог до сих пор ... это чтобы помочь мне с классом, но не с каким-либо конкретным домашним заданием;Я ищу более концептуальную информацию, которую я не нашел ни в своем учебнике, ни в учебниках.На чисто теоретическом уровне я понимаю, почему инкапсуляция эффективна для ОО-программирования, но мне нужно лучше понять, что именно происходит.Я постоянно путаюсь с тем, по какому пути протекают данные, и удивляюсь, откуда мы получаем и устанавливаем данные ОТ.Надеемся, что это не исключение из правила «нет глупых вопросов».
Рассмотрим:
public class Employee
{
private int empNum;
public int getEmpNum()
{ return empNum; }
public void setEmpNum(int Emp)
{ empNum = emp; }
}
Моя интерпретация этого: используя int Emp
, переданный откуда-то, мы устанавливаемобъявленная переменная empNum в методе set...
.Затем мы get...
эту переменную и возвращаем ее вызывающему методу.Это хорошее понимание?
Далее рассмотрим:
import.javax.*
public class CreateEmp
{
public static void main(String[] args)
{
int ssn;
ssn = JOptionPane.showInputDialog(null,"enter ssn");
Employee newEmp = new Employee(123456789);
JOptionPane.showMessageDialog(null,"Employee ID " + newEmp.getEmpNum);
}
}
С этим классом мне не нужно явно set
переменная, потому что объявление new Employee(123456789)
автоматически отправляет это значениеset...
метод.return
в методе Employee возвращает результирующее значение вызывающему методу и делает эту переменную доступной, в данном случае для вывода моего диалогового окна.У меня есть ручка?
Вот где я запутался.С моим пониманием, как отмечалось выше - что может быть не так - я никогда не могу выбрать лучшее место для размещения логики.Например: я бы поместил диалоговое окно «введите номер сотрудника» в класс Employee
, с условием запускать ТОЛЬКО, если параметр, переданный методу, был нулевым.На мой взгляд, насколько я понимаю поток данных, цель этого класса - получить номер сотрудника.Если он не указан по умолчанию, его нужно создать.Я не уверен, является ли это мышление наилучшей практикой, или я готовлюсь к неприятностям позже.
Мне бы хотелось услышать некоторые мысли о том, правильно ли я понимаю, что происходит.