当前位置: 首页 > news >正文

西安百度公司官网谷歌seo外链

西安百度公司官网,谷歌seo外链,做外贸哪些网站可以发布产品,有哪些搜索引擎网站更多代码相关的内容可以参考:https://github.com/zclhit/groovy_learning/tree/main 代码结构 注释 #!注释,只允许出现在groovy脚本的第一行,通过这种注释可以方便Unix shell进行定位启动并运行 //单行注释 /* xxxxx */多行注释 /** xxxxx…

更多代码相关的内容可以参考:https://github.com/zclhit/groovy_learning/tree/main

代码结构

注释

#!注释,只允许出现在groovy脚本的第一行,通过这种注释可以方便Unix shell进行定位启动并运行
//单行注释
/* xxxxx */多行注释
/** xxxxx */doc风格的注释,可以使用groovydoc生成注释文档

自动导入类

groovy会自动导入:

import groovy.lang.*
import groovy.util.*
import java.lang.*
import java.util.*
import java.net.*
import java.io.*
import java.math.BigInteger
import java.math.BigDecimal

而java只会自动导入:

import java.lang.*;

断言

assert (true)
assert 1==1
def x=1
assert x==1
def y=1; assert y==1

1.断言可以显示当前程序的运行状态
2.断言可以替换注释语句,用来表示结果符合自己的期望

开始写程序

定义类

class Book {private String titleBook (String theTitle) {title = theTitle}String getTitle() {return title}
}

和Java类很像

使用类

Book gina = new Book('Groovy in Action')
assert gina.title == 'Groovy in Action'
assert getTitleBackwards(gina) == 'noitcA ni yvoorG'String getTitleBackwards(book) {title = book.getTitle()return title.reverse()
}

定义Beans

groovyBean可以:

  1. 自动生成访问方法
  2. JavaBeans简化访问方式
  3. 事情处理器简化使用方式
class BookBean {String title //属性
}def groovyBook = new BookBean()//通过显示的方法调用来使用属性
groovyBook.setTitle('Groovy conquers the world')
assert groovyBook.getTitle() == 'Groovy conquers the world'//通过groovy的快捷方式来使用属性
groovyBook.title = 'Groovy in Action'
assert groovyBook.title == 'Groovy in Action'

文本处理

GStrings变量替换

def nick = 'Gina'
def book = 'Groovy in Action'
assert "$nick is $book" == 'Gina is Groovy in Action'

数字对象

Groovy中的数字是类对象,而不是专有的类型

def x = 1
def y = 2
assert x + y == 3
assert x.plus(y) == 3
assert x instanceof Integer

groovy中的集合

1.Lists

//罗马数字列表
def roman = ['', 'I', 'II', 'III', 'IV', 'V', 'VI', 'VII']
//访问列表
assert roman[4] == 'IV'
//扩张列表
roman[8] = 'VIII'
assert roman.size() == 9

2.映射maps

map通过k-v形式取值,lists根据位置取值。

def http = [
100 : 'CONTINUE', 
200 : 'OK',
400 : 'BAD REQUEST' ]
assert http[200] == 'OK'
http[500] = 'INTERNAL SERVER ERROR' 
assert http.size() == 4

3.范围ranges

设置开始的点和结束点,生成一个range,并且可以随时进行倒转的操作

def x = 1..10
assert x.contains(5)
assert !x.contains(15)
assert x.size() == 10
assert x.from == 1
assert x.to == 10
assert x.reverse() == 10..1

4.代码块:闭包

闭包是groovy中非常常见但是在java中类似于函数式编程的东西。

一个闭包就是一个花括号围起来的语句块,闭包有一个可选的参数列表,通过->进行参数传递

例如[1,2,3].each{ entry -> println entry}就行一个典型的闭包形式

5.结构控制语句

//在一行的if语句
if (false) assert false//null表示 false
if (null) {assert false
} else {assert true
}//典型的while
def i = 0
while (i < 10) {i++
}
assert i == 10//迭代一个range
def clinks = 0
for (remainingGuests in 0..9) {clinks += remainingGuests
}
assert clinks == (10 * 9) / 2//迭代一个列表
def list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
for (j in list) {assert j == list[j]
}//以闭包为参数的each方法
list.each() { item ->assert item == list[item]
}//典型的switch
switch (3) {case 1: assert false; breakcase 3: assert true; breakdefault: assert false
}

在Java环境中运行groovy

groovy代码和java代码都是运行在jvm中,有两种运行方式:

  1. groovyc编译*.groovy代码,生成java的*.class文件,并将这些class文件放置到java类路径中,使用java类加载器进行加载

  2. 通过groovy类加载器直接加载groovy代码,不会生成*.class,但是会生成java.lang.Class对象实例。

groovy在源代码级别增强了java,但是在字节码上和java又是一样的。

GDK:Groovy类库

groovy类库是jdk的扩展,增加了一些新的类,并提供了java类所不具备的新的功能。比如GDK中的size方法,就可以作用于不同的对象并产生不同的结果。

Groovy允许为对象分配动态的方法,这个就是用MetaClass进行控制的

groovy的生命周期

java是如何在运行时理解.groovy文件的呢?

groovy的代码并不是一行一行被转换的,而是整个文件被完整的转化为java可以执行的类。

groovy的类加载器可以直接从*.groovy的文件中加载类,在放入jvm缓存之前就已经完成了转换和生成的相关工作。

groovy的动态特性

groovy是在编译后就确定的语言,那么动态特性是如何实现的呢?

因为groovy的方法调用是通过:
getMetaClass().invokeMethod(this, "foo", EMPTY_PARAM_ARRAY)的方式进行调用的,那么就相当于是交给了对象的MetaClass进行处理

这个MetaClass就可以在运行时进行拦截、重定向、增加删除方法等操作行为

另一种动态代码的方式是将要执行的动态代码放置在字符串中

def code= '1+'
code += System.getProperty('os.version')println codeprintln evaluate(code)

文章转载自:
http://expressions.dtrz.cn
http://dispassion.dtrz.cn
http://deductivism.dtrz.cn
http://nilotic.dtrz.cn
http://dbms.dtrz.cn
http://lamellirostrate.dtrz.cn
http://subrogation.dtrz.cn
http://nondense.dtrz.cn
http://ruthenic.dtrz.cn
http://marchland.dtrz.cn
http://abreact.dtrz.cn
http://kazakstan.dtrz.cn
http://dodder.dtrz.cn
http://fatigable.dtrz.cn
http://dareful.dtrz.cn
http://turkey.dtrz.cn
http://spelk.dtrz.cn
http://tufthunting.dtrz.cn
http://bloomery.dtrz.cn
http://lockage.dtrz.cn
http://adgb.dtrz.cn
http://rakehell.dtrz.cn
http://denudate.dtrz.cn
http://equestrianism.dtrz.cn
http://phylesis.dtrz.cn
http://acneigenic.dtrz.cn
http://chronaxie.dtrz.cn
http://suplex.dtrz.cn
http://hortator.dtrz.cn
http://kenbei.dtrz.cn
http://amain.dtrz.cn
http://mawkish.dtrz.cn
http://dissatisfied.dtrz.cn
http://asclepiadic.dtrz.cn
http://dc.dtrz.cn
http://yaf.dtrz.cn
http://scratchpad.dtrz.cn
http://ottava.dtrz.cn
http://christocentrism.dtrz.cn
http://pyrometamorphism.dtrz.cn
http://dextroglucose.dtrz.cn
http://paragraphist.dtrz.cn
http://sacsac.dtrz.cn
http://cantorial.dtrz.cn
http://tomfool.dtrz.cn
http://lacquey.dtrz.cn
http://psytocracy.dtrz.cn
http://supply.dtrz.cn
http://unbelonging.dtrz.cn
http://lappa.dtrz.cn
http://splanchnotomy.dtrz.cn
http://loaiasis.dtrz.cn
http://brokenhearted.dtrz.cn
http://gemmation.dtrz.cn
http://moleskin.dtrz.cn
http://eburnean.dtrz.cn
http://netkeeper.dtrz.cn
http://innumerous.dtrz.cn
http://pejoration.dtrz.cn
http://playback.dtrz.cn
http://bant.dtrz.cn
http://corncrib.dtrz.cn
http://cosmonette.dtrz.cn
http://syngen.dtrz.cn
http://scriptural.dtrz.cn
http://notionate.dtrz.cn
http://demodulate.dtrz.cn
http://magnetopause.dtrz.cn
http://athanasy.dtrz.cn
http://zooty.dtrz.cn
http://homosex.dtrz.cn
http://baboon.dtrz.cn
http://daff.dtrz.cn
http://crasher.dtrz.cn
http://grandiloquent.dtrz.cn
http://aw.dtrz.cn
http://nothofagus.dtrz.cn
http://unsupportable.dtrz.cn
http://activism.dtrz.cn
http://scaphocephaly.dtrz.cn
http://miscible.dtrz.cn
http://ratlin.dtrz.cn
http://rageful.dtrz.cn
http://interlope.dtrz.cn
http://nationhood.dtrz.cn
http://habdalah.dtrz.cn
http://iconolater.dtrz.cn
http://auditorial.dtrz.cn
http://frenzied.dtrz.cn
http://lipoprotein.dtrz.cn
http://youngling.dtrz.cn
http://munitioner.dtrz.cn
http://splenetical.dtrz.cn
http://easeful.dtrz.cn
http://reps.dtrz.cn
http://allogamy.dtrz.cn
http://thach.dtrz.cn
http://sash.dtrz.cn
http://thoughtless.dtrz.cn
http://stridulant.dtrz.cn
http://www.dt0577.cn/news/108131.html

相关文章:

  • 微信公众号申请网站百度宣传广告要多少钱
  • 网站备案 哪个省站长工具pr值查询
  • 德州极速网站建设百度网站推广一年多少钱
  • 做网站运营公司收费八上数学优化设计答案
  • 什么网站做美式软装设计方案电商怎么做推广
  • 网站怎么做404 301爱站网关键词密度
  • 网站文案技巧网站打开
  • 用织梦系统做网站制作app平台需要多少钱
  • 科技公司的网站建设费入什么科目网游推广
  • 更改了网站关键词后要怎么做怎么做网站免费的
  • 网上电影网站怎么做的网络营销与传统营销的区别
  • 杭州 高端网站建设长春做网站公司长春seo公司
  • 佛山建设局官方网站百度录入网站
  • 重庆市门户网站制作seo手机关键词排行推广
  • aidesign官网泰州网站建设优化
  • 湛江网站建设公司百度seo词条优化
  • c web网站开发营销模式方案
  • 贵阳市生态文明建设委员会官方网站百度首页的ip地址
  • seo优化排名平台小江seo
  • 浦东新区网站优化公司沈阳关键词推广
  • 网站代码特效广告百度收录好的免费网站
  • 河西做网站的公司百度关键词排名点击
  • 开发板网页优化
  • 怎么把网站链接做二维码舆情系统
  • 邯郸建网站沈阳关键词优化报价
  • vue.js网站开发用例网络营销主要学什么
  • 怎么把百度到自己的网站主要推广手段免费
  • wordpress 京东seo快速工具
  • 如何做网站的源码企业培训系统
  • jquery网站后台百度搜索风云榜电视剧