/**
* 默认class 属性值 均为public权限
*/
class Person {
String name
int age
def increaseAge(int d) {
age += d
}
}
/** 无论直接.还是调用get/set 最终都是调用get/set */
def person = new Person(name: "iblade", age: 21)
println "the name is ${person.name}," +
"\nthe age is ${person.age}"
interface Action {
//接口方法必须是public,不能是其他,此处与java不用
void eat()
void drink()
void play()
}
class Human implements Action {
@Override
void eat() {
}
@Override
void drink() {
}
@Override
void play() {
}
}
//trait 介于类似抽象类 ,可以实现部分方法,未实现方法用abstract修饰
//编程中极少用法 该类型
trait DefaultAction {
abstract void eat()
void play() {
println 'I can play'
}
}
//解释执行的js ,编译执行的java,运行时期执行的代码 例如java中的反射
//java直接在第一步编译时期 找到方法就报错了,不存在类似MetaClass运行时期再去寻找该方法
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交