MyTetra Share
Делитесь знаниями!
mixin
Время создания: 17.03.2021 10:28
Раздел: INFO - Development - GROOVY
Запись: wwwlir/Tetra/master/base/16159481263u6zeorxsy/text.html на raw.githubusercontent.com

class Params{

boolean isLogin;

}

Contragent.mixin Params



// Эта аннотация позволяет внедрить в класс Manager поведение метода из класса Employee

class Employee {
    def doWork() { 'my work' }
}

class Manager {
    @Delegate
    Employee slave = new Employee()
}

def worker = new Manager()
println worker.doWork()

// либо можно сделать то же самое с помощью mixin
class Employee2 { def doWork() { 'my work' } }
class Manager2 {}

Manager2.mixin Employee2

println new Manager2().doWork()
 
MyTetra Share v.0.59
Яндекс индекс цитирования