IntelliJ IDEA

软件安装:android studio安装以及操作手册

…衆ロ難τιáo~ 提交于 2020-08-09 17:59:51
Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。好的工具使用才有好的开发效率。刚好买了新电脑就把全部的安装步骤给记录下来。 android studio下载 首先我们打开链接: android studio下载链接 截至到目前为止最新版本为3.5.2,我们点击下载,得到如下安装包点击 进去安装界面。点击NEXT 进去选择界面 android studio为默认必须安装项,android virtual device可选择装或者不装,用于软件调试。我们默认安装 这里选择安装路径,建议自己新建路径,以免C盘安装过多导致C盘空间不足,确定好了安装路径后,点击next 进入安装,等待安装结束 点击next 点击finish完成安装并打开android studio 因为是第一安装,所以没有之前的配置引用直接OK 因为是新电脑没有SDK,先cancel 进去欢迎界面,这里可以配置自己喜欢的风格,我这里默认 选择UI主题,根据个人喜好来就好 点击next 点击finish,等待自动安装组件 完成安装 显示HAXM安装失败,原因是我的电脑是10家庭版本,没有Hyper-V导致,如果你们跟我一样的版本可以百度查询下配置方式

用IDEA查看反编译

好久不见. 提交于 2020-08-09 16:30:50
目录 一 找到java编译后的class文件 二 查看编译后的结果 三 将字节码文件拷贝到IDEA中 四 打开这个class文件 一 找到java编译后的class文件 二 查看编译后的结果 发现是乱码 三 将字节码文件拷贝到IDEA中 四 打开这个class文件 下面这个结果就是IDEA反编译的结果 // // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler) // public class Employee { String name; int age; String designation; double salary; public Employee(String name, int age, String designation, double salary) { this.name = name; this.age = age; this.designation = designation; this.salary = salary; } public Employee() { } public String getName() { return this.name; } public void setName(String

最新idea激活方式,全套可用

为君一笑 提交于 2020-08-09 14:52:20
教程 本项⽬在最新 2019.3.3 上测试通过。 IntelliJ IDEA 2019.3.3及以下 AppCode 2019.3.3及以下 CLion 2019.3.3及以下 DataGrip 2019.3.3及以下 GoLand 2019.3.3及以下 PhpStorm 2019.3.3及以下 PyCharm 2019.3.3及以下 Rider 2019.3.3及以下 RubyMine 2019.3.3及以下 WebStorm 2019.3.3及以下 第一步 : 启动IDEA,现在一启动需要立刻输入注册码,这里可以选择免费试用的方式进入IDEA,如下图所示。( 如果进不去可以执行第四步 直接打开 IDE的bin目录下的xxx.exe.vmoptions进行修改 ) 第二步 : 在 idea安装目录bin文件夹下 拖入jetbrains-agent.jar以及 important.txt 下载地址: https://www.lanzous.com/b00nbdv7g 密码:emrf 第三步: 如下图所 示( 支持所有软件 ) 第四步 : 如下图所示(指向你所引入的文件) ( 不要使⽤中⽂路径 ) 这一步很关键,地址要输对,支持 mac等系统,支持相对路径 示例 : mac: -javaagent:/Users/neo/jetbrains-agent.jar linux:

问题总结(事后诸葛亮和组员交换事宜)

血红的双手。 提交于 2020-08-09 14:20:39
一、设想和目标 1、我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 解决的问题(按特性来定义): ①交互性:用户不仅仅只是能够发表帖子、点赞、评论,还可以使用时间轴记录生活,供个人回忆。查看地图,获取热点区域。 ②直观性:地图的深浅颜色快速获取最活跃的周边信息、生活分享或美食评价。不再迷惘于广大的城市,而没有目标。 ③单纯性:追求更为单纯的分享,而不是参与商业性的带货行为。不必在浏览他人分享时,让广告映入眼帘。 ④隐私性:提供匿名发帖、匿名评论的功能,无需创建多个小号来宣泄烦恼,减少多个账号切换的繁琐。 2、我们达到目标了么(原计划的功能做到了几个? 按照原计划交付时间交付了么? 原计划达到的用户数量达到了么?) 已实现的功能如下(按时间交付但未达到目标): ①地图模块:地图气泡图实现了福建省区块,虽暂未完成其他省份,但已大致出现气泡图的雏形,之后不断扩宽至全国修改样式即可。 ②帖子模块:能够完成用户的看帖、发帖、删帖、交互(点赞、评论、TAG) ③时间轴模块:能够对时间轴进行添加、筛选、删除 ④个人空间模块:对个人空间的信息进行修改和筛选。能够看到关注列表,进入别人的个人空间。 3、有什么经验教训? 如果历史重来一遍, 我们会做什么改进? ①任务分的粒度太大了,在实现过程中有很多的细节没有考虑到,也导致燃尽图是中间突起,后端急速下降的状态。

Repository 返回 IQueryable?还是 IEnumerable?

筅森魡賤 提交于 2020-08-09 13:48:08
这是一个很有意思的问题,我们一步一步来探讨,首先需要明确两个概念(来自 MSDN): IQueryable:提供对未指定数据类型的特定数据源的查询进行计算的功能。 IEnumerable:公开枚举数,该枚举数支持在非泛型集合上进行简单迭代。 IQueryable 继承自 IEnumerable,它们俩最大的区别是,IQueryable 是表达式树处理,可以延迟查询,而 IEnumerable 只能查询在本地内存中,Repository 的概念就不多说了,在“伪 DDD”设计中,你可以把它看作是数据访问层。 下面我们先实现 Repository 返回 IEnumerable: public interface IBookRepository { Book GetById(); IEnumerable<Book> GetAllBooks(); IEnumerable<Book> GetBy....(); void Add(Book book); void Delete(Book book); void SaveChanges(); } 上面是我们的一般接口设计,包含查询、增加、删除操作,你发现并没有修改,其实我们可以先通过 GetById 操作,然后取得 Book 对象,进行修改,最后执行 SaveChanges 就可以了,在持久化数据库的时候,会判断实体状态值的概念,最后进行应用改变

volatile关键字解析~高级java必问

℡╲_俬逩灬. 提交于 2020-08-09 13:44:02
昨天我介绍了原子性、可见性、有序性的概念,那么今天就来见识下这些概念的主角-volatile关键字。 volatile基本介绍 volatile可以看成是synchronized的一种轻量级的实现,但volatile并不能完全代替synchronized,volatile有synchronized可见性的特性,但没有synchronized原子性的特性。可见性即用volatile关键字修饰的成员变量表明该变量不存在工作线程的副本,线程每次直接都从主内存中读取,每次读取的都是最新的值,这也就保证了变量对其他线程的可见性。另外,使用volatile还能确保变量不能被重排序,保证了有序性。 volatile只用修饰一个成员变量,如:private volatile balance; volatile比synchronized编程更容易且开销更小,但具有一点的使用局限性,使用要相当小心,不能当锁使用。volatile不会像synchronized一样阻塞程序,如果是读操作远多于写操作的情况可以建议使用volatile,它会有更好的性能。 volatile使用场景 如果正确使用volatile的话,必须依赖下以下种条件: 1、对变量的写操作不依赖当前变量的值; 2、该变量没有包含在其他变量的不变式中。 第1个条件就说明了volatile不是原子性的操作,不能使用n++类似的计数器

不再使用lombok的@Slf4j

旧街凉风 提交于 2020-08-09 13:04:27
@Slf4j 真的是很方便的注解,我很是喜欢,只是Lombok毕竟有一定的侵入性,需要IDE进行支持,有时IDE和其插件还会因为升级问题而不匹配。只能忍痛不在工作场合中使用了。   没了这么好用的注解,我们怎么快速敲出这一行内容呢?其实不难,我们可以使用IDEA的 live template 。 1.首先,打开设置界面。   按下 Ctrl+Alt+S 唤醒界面,搜索 live templates ,相信有不少同志已经很熟悉这个界面了,如果没有Java分组,请先创建Java分组。 2.新建一个 live template   我们选择新建一个 live template ,缩略语输入 log ,当然您也可以输入其它,比如 slog ,这样可以减少冲突,下面的生成的代码为: private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger($CurrentClass$.class);   其中, $CurrentClass$ 需要编辑设置一下: 后记   大道至简,有时候,代码少一些工巧,返璞归真,反而更好,共勉。 来源: oschina 链接: https://my.oschina.net/hengbao666/blog/4341862

IDEA快速选择提示代码的设置

落花浮王杯 提交于 2020-08-09 12:58:21
在IDEA编辑时,选择代码提示总是按上下键来选择,总想像vim那样使用 J,K来上下选择。 解决方法: 修改KeyMap的设置:操作如何: 1. Ctrl+Alt+S 打开Settings,并搜索keymap 搜索down,然后设置所想设置的快捷键,同理搜索up设置向上选择。 来源: oschina 链接: https://my.oschina.net/u/4333379/blog/4335256

大牛带你进阶JAVA架构师,系统架构,高端JAVA技术提升(1005g)网盘下载

江枫思渺然 提交于 2020-08-09 12:28:36
大牛带你进阶JAVA架构师,系统架构,高端JAVA技术提升(1005g)网盘下载 最全精品JAVA高级互联网架构师,微服务,高并发,分布式,性能优化,高可用,集群部署,源码解读,设计模式,数据结构,服务器,数据库,持续集成,自动化部署落地,项目实战,团队协作,大厂高薪面试系列 技术涵盖但不限于-- SpringBoot SpringCloud Spring5 Mybatis RabbitMQ Redis Mongodb Dubbo Zookeeper Kafka Jvm Nginx Tomcat Docker K8s Devops Jenkins SpringSecurity Shiro Netty SSO Activiti Quartz Mysql RocketMQ Zookeeper Linux Shell Nosql MySQL Oracle Git Maven IDEA,微服务,高并发,分布式,性能优化,高可用,集群部署,源码解读,设计模式,数据结构,服务器,数据库,持续集成,自动化部署落地,项目实战,团队协作,高薪面试,中间件,全文检索,权限管理,日志分析,单点登录,任务调度,工作流,小程序,项目实战,微服务电商系统,健康项目实战,在线教育项目,秒杀系统实战,大型分布式电商项目实战...... 主要针对--Java初级工程师想往Java高级和架构师进阶的开发人员