Android lombok 学习

news/2024/8/26 7:51:20

下面说一下我写demo过程中的处理过程(可能与网络其他的有些不同)
1.AS中安装插件
在Android Studio下,进入setting->Plugins ,右侧搜索Lombok,然后点击安装,重启Android Studio

这里写图片描述

2.添加依赖项

compileOnly "org.projectlombok:lombok:1.16.20"
annotationProcessor "org.projectlombok:lombok:1.16.20"

3.实现类person

@Getter @Setter
public class Person {
    private int ID ;
    private String name;
    private String sex;   
}

其中 setID、setName、setSex及getID、getName、getSex是添加完 @Getter @Setter 后自动实现的
4.调用 person 类

public class MainActivity extends AppCompatActivity {

    private Person person = null;
    private String TAG = "MainActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        person = new Person();
        person.setID(0);
        person.setName("Zhang");
        person.setSex("man");

        int id = person.getID();
        String name = person.getName();
        String sex = person.getSex();
        Log.e(TAG,"person id:" + String.valueOf(id)+"name:"+ name + "sex:"+sex);
    }
}

该框架可以减少代码量,是代码更简洁;个人认为使用的框架越多,代码越简洁,有时反而会增加代码的阅读难度


http://www.niftyadmin.cn/n/1390310.html

相关文章

打造移动终端的 WebApp(一):搭建一个舞台

最近随着 Apple iOS 和 Android 平台的盛行,一个新的名词 WebApp 也逐渐火了起来,这里我也趁着热潮做一个关于 WebApp 系列的学习笔记,分享平时的一些研究以及项目中的经验,在现阶段研究对象暂时限定为 iOS 平台(iPhone/iPad/iPod…

Win2016 Nano Server安装

微软在最新的Windows Server 2016中带来一个全新的Nano Server选项。微软称,Nano Server将成为下一代云基础设施和应用程序的核心。深度重构的Nano Server将特别专注于云基础设施、云应用程序以及容器。另外,Nano Server平台的角色和可选功能都将通过外部…

Directx 3D编程实例:随机绘制的立体图案旋转

最近朋友建议我写一些关于微软云技术的博客留给学校下一届的学生们看,怕下一届的MSTC断档。于是我也觉的有这个必要。 写了几篇博客之后,我觉得也有必要把这一年的学习内容放在博客做个纪念,就这样写了本篇博客。 第一步:修改Prog…

Android ConnectivityManager学习

1.设置权限 <uses-permission android:name"android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name"android.permission.INTERNET"/> 2.获取网络服务 ConnectivityManager cm (ConnectivityManager) getSystemService(C…

【转】博弈之阶梯博弈

baidu先生&#xff1a; 首先是对阶梯博弈的阐述...博弈在一列阶梯上进行...每个阶梯上放着自然数个点..两个人进行阶梯博弈...每一步则是将一个集体上的若干个点( >1 )移到前面去..最后没有点可以移动的人输..如这就是一个阶梯博弈的初始状态 2 1 3 2 4 ... 只能把后面的点往…

avalon2学习教程14动画使用

avalon2实际上没有实现完整的动画模块&#xff0c;它只是对现有的CSS3动画或jquery animate再包装一层。 我们先说如何用CSS3为avalon实现动画效果。首先要使用avalon.effect注册一个特效。 avalon.effect(name, definition) 所有注册了的特效&#xff0c;都可以在avalon.effec…

Zepto.js 源码解读

Zepto.js是一个jQuery的迷你版本&#xff0c;只支持现代浏览器&#xff0c;包含了jQuery中大部分的API&#xff0c;这也是一个适合在移动端使用的基础类库。 (function(undefined) {if (String.prototype.trim undefined) // fix for iOS 3.2String.prototype.trim function(…

Android AlertDialog学习

AlertDialog为弹出对话框&#xff0c;下面简单实现自定义对话框 1.Application 实现 public class MyApplication extends Application {private static MyApplication application null;public static MyApplication getMyApplication(){return application;}Overridepubli…