/**
* 默認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運行時期再去尋找該方法
Gradle:3.groovy面向對象
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.