Nano Hash - криптовалюты, майнинг, программирование

Частный сеттер говорит, что метод установки не используется

Я пишу программу, которая принимает пользовательский ввод для сотрудников. У меня есть несколько частных сеттеров (они должны быть закрытыми в соответствии с UML), но имена методов подчеркнуты серым цветом. Я пробовал создавать геттеры или делать this.variableName, чтобы избавиться от них, но, честно говоря, у меня нет большого опыта работы с частными сеттерами, поэтому я не уверен, что делать. Также нет геттеров для некоторых переменных и нет конструктора по умолчанию, как показано в UML.

UML:

УМЛ

и вот мой код

public class Employee_Kubik {
    
    //variables
    private static String name;
    private double salary;
    private int yearsWith;
    private double sales;
    
    public Employee_Kubik(String n, double sala, int y, double sale){
        name = n;
        salary = sala;
        yearsWith = y;
        sales = sale;
    } //Employee end
    
    public String getName(){
        return name;
    } //getName end
    
    private void setSalary(double s){
        if (s > 0){
            salary = s;
        } //if end
        else{
            salary = 0;
        } //else end
    } //setSalary end
    
    private void setYearsWith(int yw){
        if (yw > 0){
            yearsWith = yw;
        } //if end
        else{
           yearsWith = 0;  
        } //else end
    } //setYearsWith
    
    private void setSales(double s){
        if(s > 0){
            sales = s;
        } //if end
        else{
            sales = 0;
        } //else end
    } //setSales end
    
    public boolean promote(){
        if(sales > 9999 && yearsWith > 2){
            return true;
        } //if end
        else{
            return false;
        } //else end
    } //promote end
    
    public double calculateRaise(){
        salary = salary * 0.05;
        
        return salary;
    } //calculateRaise end
    
    @Override
    public String toString(){
        return "Employee Name: " +
                name +
                ", has been with the company for " +
                yearsWith +
                " years and last year sold a total of $" +
                sales +
                "\nPromotion Status = " +
                promote();
    } //toString end
    
} //class end

Ответы:


1

Одно место, где вы можете их использовать, это ваш конструктор:

public Employee_Kubik(String n, double sala, int y, double sale){
    name = n;
    setSalary(sala);
    setSales(sale);
    setYearsWith(y);
}
01.11.2020
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..