全部 文章 问答 分享 共找到181个相关内容
[文章] 使用Axure进行原型设计
使用Axure进行原型设计最近工作室找了两个新的ui。由于没有系统的原型给到ui,导致ui画的东西与我们想要的有些差距。在我的建议下,我们的项目负责人(产品经理)打算画一下原型图。
2020-11-17 01:17 · Axure / 蓝湖 / 原型 / ui
[问答] 关于Android开屏广告设计
站长的所有所有实战课程没有讲到APP应用开屏广告的设计!希望专门做这样一期视频!
2020-06-15 18:03 · android / 开屏广告
[分享] 表结构设计器(EZDML)
windows下可以使用这个来做表结构设计,Mac下可以使用PDMan
2020-01-21 23:59 · 神器 / 工具 / 效率 / 数据库 / 表设计
[文章] 设计模式的六大原则
设计模式的六大原则面对长篇大论的六大原则你是怎么理解的呢?
[文章] 喜马拉雅项目-订阅数据库设计
喜马拉雅项目-订阅数据库设计我们需要什么字段呢?首先我们打算订阅界面,显示的内容跟首页的推荐一样,那么!
[文章] [待更新]学习笔记-设计模式
3.为了交互对象之间的松耦合设计而努力继承又称为白箱复用,相当于把所有的实现细节暴露给子类,组合/聚合又被称为黑箱复用,对类以外的对象是无法获取实现细节的。
2021-08-18 17:07 · java / 设计模式
[文章] 喜马拉雅项目-订阅数据库设计
喜马拉雅项目-订阅数据库设计我们需要什么字段呢?首先我们打算订阅界面,显示的内容跟首页的推荐一样,那么!
2019-08-01 21:39 · sql / 数据库
[问答] 请问一下,博客系统的ui设计图在哪里能看啊
请问一下,博客系统的ui设计图在哪里能看啊
2020-12-29 16:36 · 博客系统
[问答] 设计一张预约的表,苦于如何获得预约时间和截止时间
设计一张预约的表,苦于如何获得预约时间和截止时间。
2020-09-30 02:29 · java后端 / sql
[文章] JavaWeb博客系统后端-数据表设计
Mongodb,企业版收费,社区版本免费,详情请查看MongoDBLicensing所以,大多数情况下我们选择Mysql或者Mongodb这里的话我们就选择MySql数据库表和字段设计用户表tb_userid-IDuser_name
[文章] 《kotlin核心编程》阅读笔记 第九章 设计模式
@[TOC](《kotlin核心编程》阅读笔记第九章设计模式)第九章设计模式基于Kotlin崭新的语言特性,实现或替换了Java中部分典型设计模式。
1970-01-01 00:00 · kotlin
[问答] 求助,我在B站看到【领券联盟】显示分类数据-安卓项目开发实战课程毕业设计课程的第18集,老师也是这样子写的
在B站看到【领券联盟】显示分类数据-安卓项目开发实战课程毕业设计课程的第18集,老师也是这样子写的,为什么我这里不能转换呢
2020-03-05 17:37 · Android
[文章] [毕业设计]一个带后端的影音播放app
前言之前写毕业设计的时候,指导老师问我们搞什么,并不限制范围,绝大部分人选择的都是搞博客。
2022-08-05 16:09 · 毕业设计 / 音乐 / 电影 / Android / vue / SpringBoot
[问答] 模块设计
现在有一个项目使用udp通讯收发数据包,界面架构如下fragment1到fragment6都可以收发数据。我定义了SendThread和ReceiveTHread类分别用来发送数据和接收数据,现在数据发送出去之后如果接收方在8秒钟之内我接收到了之前发送出去的数据就说明数据发送成功了,现在我该如何将ReceiveThread中接收到的数据传递到正确的fragment界面之中!
2021-03-06 09:12 · android / handler
[问答] android毕业设计
我的毕业作品是一个通过遥感图像识别农村房屋并进行数字化的操作,但不知到该用什么控件来放遥感图像,并且还要再遥感图像上添加一个农村房屋的图层,不知道怎么实现这个控件,是自定义控件吗?
2020-02-13 16:19 · android / 毕业作品
[问答] 筛选弹窗UI设计问题

需要的效果是类似于'什么值得买'APP中的筛选页面。如下图

当上面四个TextView被点击时,弹出对应筛选框(可单/多选)

为了实现这个弹窗,我用UI Automator Viewer查看,发现没法查看到

想知道有什么好的方法可以实现这个功能?


2023-03-09 16:12 · Android / UI设计 / 筛选弹窗
[文章] 泛型程序设计
泛型,即“参数化类型”,将原来的具体类型参数化。在不创建新类型的情况下,通过泛型指定不同的类型形参,来控制实际传入实参的具体类型。换句话说,就是在使用和调用时传入具体的类型。为什么使用泛型?能够对类型进行限定(比如集合)将运行期错误提前到编译期错误获取明确的限定类型时无需进行强制类型转化具有良好的可读性和安全性泛型类泛型类的定义一个简单的泛型类,和普通类的区别是,类名后添加了<T>一个泛型标识,“T"类型参数(类型形参),传入的是类型实参,当然也可以用其他字母标识,但是"<>"左右尖括号必须存在。publicclassGeneric<T>{privateTdata;publicTgetData(){returndata;}publicvoidsetData(Tdata){this.data=data;}publicstaticvoidmain(String[]args){/*1.没有传入具体的类型参数,可以存放任何类型的数据【下图】*本质:虚拟机会对泛型代码进行类型擦除,类型擦除后Generic<T>会变为*Generic(原始类型),后面会讲到,无限定类型的域用Object代替,即擦除*后Tdata->Objectdata,这也是为什么没有传入具体类型,却能存放多种*类型的原因。*/Genericgeneric=newGeneric();generic.setData(1);generic.setData("String");generic.setData(newObject());GenericgenericStr=newGeneric<String>();//CORRECT[1]genericStr.setData("hello");genericStr.setData(1);/**2.参数化类型(初始化时传入具体的类型参数)【下图】*本质:由编译器进行类型转化的处理,无需人为干预。*当调用泛型方法时,编译器自动在调用前后插入相应的*强转和调用语句。*/Generic<String>genericString=newGeneric<>();genericString.setData("hello");//Generic<int>genericInt=newGeneric<>();ERROR[2]Generic<Integer>genericInt=newGeneric<>();}}【1】原始类型可以接受任何参数化类型,即Genericgeneric==newGeneric<String>()如[1]处所示。【2】泛型的类型参数只能是类类型,不能是基本类型。如[2]处,但可以使用期包装类型。【3】泛型参数命名规范如下:泛型命名规范:国际惯例,类型参数的命名采用单个大写字母。常见的泛型命名有:T-Type:第一类通用类型参数。S-Type:第二类通用类型参数。U-Type:第三类通用类型参数。V-Type:第四类通用类型参数。E-Element:主要用于Java集合(Collections)框架使用。K-KeyV-ValueN-NumberR-Result泛型接口泛型接口的定义和泛型类定义相似,如下:publicinterfaceGenericInterface<T>{TgetData();TsetData(Tdata);}类接口的实现类接口的实现存在三种形式,第一种无泛型,域类型用Object定义;第二种有泛型,域变量用泛型参数定义;第三种传递具体的类型参数,域变量的类型为具体的类型。publicclassGenericInterfaceImplimplementsGenericInterface{@OverridepublicObjectgetData(){returnnull;}@OverridepublicObjectsetData(Objectdata){returnnull;}}/**实现类的类型参数也需要声明,否则编译器会报错*/classGenericInterfaceImpT<T>implementsGenericInterface<T>{@OverridepublicTgetData(){returnnull;}@OverridepublicTsetData(Tdata){returnnull;}}/**传入具体的类型实参*/classGenericInterfaceImplStrimplementsGenericInterface<String>{@OverridepublicStringgetData(){returnnull;}@OverridepublicStringsetData(Stringdata){returnnull;}}泛型方法泛型类,是在实例化类的时候指明泛型的具体类型;泛型方法,是在调用方法的时候指明泛型的具体类型。1、泛型方法的定义:类型变量放在修饰符前,返回类型的后面#修饰符<T>返回值方法名(...);*示例classArrayAlg{/**修饰符与返回值(T)中间的<T>标识此方法为泛型方法*<T>表明该方法可以使用泛型类型T,可以在形参或者方法体中声明变量/publicstatic<T>TgetMiddle(T...a){returna[a.length/2];}}2、调用泛型方法,在方法名前的尖括号放入具体的类型:Stringmiddle=ArrayAlg.<String>getMiddle("John","Q","Public");//类型推断:类型参数可以省略等同于Stringmiddle=ArrayAlg.getMiddle("John","Q","Public");使用泛型方法时,通常不需要指定参数类型,因为编译器会找出这些类型。这称为类型参数推断。3、泛型方法辨别真假/**泛型类*注意:下面为了介绍,不把泛型方法归类到成员方法里,泛型方法是特指!*/publicclassGenericMethod<T>{privateTdata;/**[成员方法:非泛型方法]*TgetData()和setData(Tdata)都不是泛型方法*他们只是类中的成员方法,只不过是方法的返回值类型*和方法的形参类型是用的泛型类上的T所声明的。*/publicTgetData(){returndata;}publicvoidsetData(Tdata){this.data=data;}/**[泛型方法]*泛型参数可以有多个,这里的T和泛型类上的T无任何关联,但是但是*它和泛型类上的参数类型变量相同,这时候idea会给予一个rename提示*/public<T,S>TgenericMethod(S...a){returnnull;}/**[泛型方法]*使用泛型类上的泛型变量*这时候的T就和泛型类的类型相关了*/public<V>TgenericMethod$1(Ta,Vb){returnnull;}/**[静态方法]*静态方法不能使用泛型类上的类型参数*如果静态方法要使用泛型的话,必须将静态方法也定义成泛型方法*///publicstaticTgetDataStatic(Te){}//ERROR[1]/**[泛型方法]*静态泛型方法*/publicstatic<E>EgenericMethodS(Ee){returne;}}/**普通类中的泛型方法*/classOrdinaryClass{public<T>voidsayHello(){Ta;//...}}下面以苹果为例:publicclassGenericClass<T>{//成员方法,形参类型与泛型类的类型参数相关publicvoidprint$1(Ta){System.out.println(a.toString());}//下面三个都为泛型方法//--beginpublic<T>voidprint$2(Ta){System.out.println(a.toString());}public<S>voidprint$3(Sa){System.out.println(a.toString());}publicstatic<T>voidprint$4(Ta){System.out.println(a.toString());}//--endpublicstaticvoidmain(String[]args){Appleapple=newApple();MacBookmacBook=newMacBook();HongFuShihongFuShi=newHongFuShi();//泛型类在初始化时限定了参数类型,成员方法中若使用泛型参数将会受限GenericClass<Apple>genericCls=newGenericClass<>();genericCls.print$1(apple);//MacBook是apple的一个子类genericCls.print$1(macBook);//OK//由于初始化指定了泛型类型,print$1形参中的参数类型和泛型类的类型参数相关联//所以,只能打印Apple及其子类//genericCls.print$1(hongFuShi);ERROR//泛型方法中的泛型变量类型与泛型类中的泛型参数没有任何关联//所以说下面都能正常执行genericCls.print$2(apple);genericCls.<MacBook>print$2(macBook);//类型参数可以省略[2]genericCls.print$2(hongFuShi);GenericClass.print$4(hongFuShi);}}classApple{@OverridepublicStringtoString(){return"Apple,SteveJobs";}}classMacBookextendsApple{@OverridepublicStringtoString(){return"MacBook";}}classHongFuShi{@OverridepublicStringtoString(){return"HongFushi";}}小结:【1】泛型方法的标识:方法修饰符后返回值之前有"<...>"的声明。(判断是否为泛型方法)【2】泛型方法可以定义在普通类中,也可以定义在泛型类中。【3】静态方法不能使用泛型类上的类型参数,如[1]处【4】成员方法中使用的参数类型和泛型类中的声明的类型参数有关联。【5】泛型类中的参数类型与泛型方法中的参数类型的关联:泛型方法可以使用泛型类上的参数类型,这时候就与泛型类上的参数相关联;如果泛型方法中声明了与泛型类上相同的参数类型,那么优先使用泛型方法上的参数类型,这时候idea会给予一个rename提示。【6】泛型方法的使用过程中,无需对类型进行声明,它可以根据传入的参数,自动判断。[2]【7】方法中泛型参数不是凭空而来的,要么来自于泛型类上所定义的参数类型,要么来自于泛型方法中定义的参数类型。泛型方法能独立于类而发生变化,所以说在使用原则上,在能达到目的的情况下,尽量使用泛型方法。即,如果使用泛型方法可以取代将整个类泛化,那么应该有限采用泛型方法。类型变量的限定对于类型变量没有限定的泛型类或方法,它是默认继承自Object,当没有传入具体类型时,它有的能力只有Object类中的几个默认方法实现,原因就是类型擦除。如果某个类实现Comparable接口中的compareTo方法,我们就可以通过compareTo比较两个值的大小。比如我们要计算数组中的最小元素:publicstaticvoidmain(String[]args){//传入4,2,自动装箱成Integer类intr=max(4,2);}static<T>Tmin(T[]a){if(a==null||a.length==0)returnnull;Tsmallest=a[0];for(inti=1;i<a.length;i++)if(smallest.compareTo(a[i])>0)//ERROR,因为编译器不知道T声明的变量是什么类型smallest=a[i];returnsmallest;}如果没有对类型进行限定,它默认只有Object能力,变量smallest类型为T,编译器不知道他是否是实现了Comparable接口(是否是Comparable类型),所以可以通过将T限定为实现了Comparable接口的类,就可以解决这一问题。对类型参数进行限定,让它能够默认拥有一些类的"能力"。static<TextendsComparable>Tmin(T[]a){...}类型变量限定格式:<TextendsBoundingType>【1】T应该是绑定类型的子类型(subtype)。T和绑定类型可以是类,也可以是接口。【2】一个类型变量或通配符可以有多个限定,限定类型用”&“分隔,类型变量用逗号分隔。例如:<TextendsComparable&Serializable>;<T,EextendsComparable&Serializable>;【3】在Java的继承中,可以拥有多个接口超类型,但限定中至多有一个类。如果用一个类作为限定,它必须是限定列表中的第一个。<TextendsArrayList&LinkedList>;//ERROR,限定中至多有一个类<TextendsComparable&LinkedList>;//ERROR,必须是限定列表中的第一个<TextendsArrayList&Comparable>;//CORRECT【4】类型限定不仅可以在泛型方法上,也可以在泛型类上,类型限定必须与泛型的声明在一起。public<TextendsNumber>Tcompare(Generic<TextendsComparable>a){..}//ERRORpublic<TextendsNumber>Tcompare(Generic<T>a){..}//ERROR类型擦除虚拟机没有泛型类型对象—所有对象都属于普通类。类型擦除:无论何时定义一个泛型类型,都自动提供了一个相应的原始类型(rawtype)。原始类型的名字就是删去类型参数后的泛型类型名。擦除(erased)类型变量,并替换为限定类型,如果没有给定限定就用Object替换。例如,Holder的原始类型如下:publicclassHolder{privateObjectholder;publicHolder(Objectholder){this.holder=holder;}publicObjectgetHolder(){returnholder;}}//类型擦除也会出现在泛型方法中。publicstatic<TextendsComparable>Tmin(T[]a);//擦除类型之后,只剩下publicstaticComparablemin(Comparable[]a);Java泛型转换的事实:虚拟机中没有泛型,只有普通的类和方法。所有的类型参数都用它们的限定类型替换。桥方法被合成来保持多态。为保持类型安全性,必要时插入强制类型转换。泛型的约束与局限(1)不能用基本类型实例化类型参数其原因是当类型擦除后,Object类型的域不能存储基本类型的值。(2)所有的类型查询只产生原始类型List<Number>numbers=newArrayList<>();List<Integer>integers=newArrayList<>();System.out.println(numbers.getClass()==integers.getClass());//trueif(integersinstanceofList){//trueSystem.out.println(true);}/*if(integersinstanceofList<Integer>){//compileerrorSystem.out.println(true);}*/(3)不能创建一个确切的泛型类型的数组//List<Integer>[]lists=newArrayList<Integer>[10];//ERROR//可以声明原始类型创建数组,但是会得到一个警告//可以通过@SuppressWarnings("unchecked")去除List<Integer>[]list=newArrayList[10];//使用通配符创建泛型数组也是可以的,但是需要强制转换List<Integer>[]listWildcard=(List<Integer>[])newArrayList<?>[1];下面采用通配符的方式是被允许的:数组的类型不可以是类型变量,除非是采用通配符的方式,因为对于通配符的方式,最后取出数据是要做显式的类型转换的。List<?>[]lsa=newList<?>[10];//OK,arrayofunboundedwildcardtype.Objecto=lsa;Object[]oa=(Object[])o;List<Integer>li=newArrayList<Integer>();li.add(newInteger(3));oa[1]=li;//Correct.Integeri=(Integer)lsa[1].get(0);//OK(4)不能实例化类型变量static<T>Objectinit(Class<T>cls)throwsException{//Ta=newT();//ERROR//注意不存在T.class.newInstance();Tt=cls.newInstance();//Class本身也是一个泛型类returnt;}(5)不能构造泛型数组(6)泛型类的静态上下文中类型变量无效(7)不能抛出或捕获泛型类的实例不变协变逆变首先看一段代码Number[]n=newInteger[10];ArrayList<Number>list=newArrayList<Integer>();//ERRORtypemismatch为什么Number类型的数组可以由Integer实例化,而ArrayList<Number>却不能被ArrayList<Integer>实例化呢?这就涉及到将要介绍的主题。不变协变逆变的定义:逆变与协变用来描述类型转换(typetransformation)后的继承关系,其定义:如果AA、BB表示类型,f(⋅)表示类型转换,≤表示继承关系(比如,A≤B表示A是由B派生出来的子类);f(⋅)是逆变(contravariant)的,当A≤B时有f(B)≤f(A)成立;f(⋅)是协变(covariant)的,当A≤B时有f(A)≤f(B)成立;f(⋅)是不变(invariant)的,当A≤B时上述两个式子均不成立,即f(A)与f(B)相互之间没有继承关系。容易证明数组是协变的即Number[]n=newInteger[10];泛型是不变的,即使它的类型参数存在继承关系,但是整个泛型之间没有继承关系:ArrayList<Number>list=newArrayList<Integer>();泛型类型的继承规则1.泛型参数是继承关系的泛型类之间是没有任何继承关系的。在java中,Number是所有数值类型的父类,任何基本类型的包装类型都继承于它。ArrayList<Integer>integers=newArrayList<>();ArrayList<Number>numbers=newArrayList<>();numbers=integers;//ERROR,就上上面刚刚提到的泛型是不变的2.泛型类可以扩展或实现其他的泛型类。这一点和普通类没有声明区别。比如ArrayList<T>类实现List<T>接口。这意味着,一个ArrayList<Integer>可以转换为一个List<Integer>(父类指向了子类的引用),但是,一个ArrayList<Integer>不是一个ArrayList<Number>或List<Number>(泛型参数继承与类无关)。通配符Java中引入通配符?来实现逆变和协变,通过通配符之前的操作也能赋值成功,如下所示:List<?extendsNumber>number=newArrayList<Integer>();//CORRECTList<?superNumber>list=newArrayList<Object>();//CORRECT逆变的代表使用通配符的子类型关系ArrayList<Integer>是ArrayList<?extendsNumber>的一个子类型。通配符的分类?extendsT(上边界通配符upperboundedwildcard)"?"是继承自T的任意子类型,表示一种约束关系。即泛型类型的范围不能超过T。可以取元素,不能添加元素。?(无限定通配符)?superT(下边界通配符lowerboundedwildcard)可以取元素,但是取出的元素是Object,可以添加元素,添加的元素,必须是T类或者其子类记忆:==上不存,下不取==示例:类型上边界通配符为什么只能添加?ArrayList<Integer>integers=newArrayList<>();ArrayList<Object>objects=newArrayList<>();ArrayList<Number>nums=newArrayList<>();/**1.类型上边界通配符*对变量numbers赋值,引用的集合类型参数只能是Number或者其子类。*/ArrayList<?extendsNumber>numbers;numbers=nums;numbers=integers;//引用的类对象类型超过了泛型类型的上边界//numbers=objects;ERRORintegers.add(1);//正常添加元素//numbers.add(1);ERRORnumbers只能读取,不能添加[1]//但是可以添加nullnumbers.add(null);Numbernumber=numbers.get(0);//可以读取元素为什么只能读取,不能添加?[1]?extendsT表示类型的上界,类型参数是T的子类,那么可以肯定的说,get方法返回的一定是个T(不管是T或者T的子类)编译器是可以确定知道的。但是add方法只知道传入的是个T,至于具体是T的那个子类,不知道。转化到本例来说就是:理解方式一:?extendsNumber指定类型参数必须是Number的子类,get方法返回的一定是Number编译器确定,但是对于ArrayList的add方法为来说add(Ee)->add(?extendsNumbere);调用add函数不能够确定传入add的是Number的哪个子类型。编译器不确定。理解方式二:List是线性表吧【线性结构的存储】,线性表是n个具有相同类型的数据元素的有限序列。假若number能够add,因为?extendsNumber泛型通配符,可以添加Number的任何子类型,那么numbers在get时,极有可能引发ClassCastException,比如numbers引用了<Integer>,但是在索引0处却add了float类型的数据,取出的时候如果numbers.get(0).intValue();就会抛出异常。并且这也违背了线性表中特性,只能存放单一类型的元素。/**2.类型下边界通配符*numbersSuper所能引用的变量必须是Number或者其父类*/ArrayList<?superNumber>numbersSuper;numbersSuper=objects;//逆变numbersSuper=nums;//限定了通配符的下界,类型最低是Number,Integer达不到//下界,类型不匹配//numbersSuper=integers;ERRORnumbersSuper.add(1);[2]numbersSuper.add(2.0f);[3]//numbersSuper.add(newObject())ERRORObjectobject=numbersSuper.get(0);System.out.println(object);?superT表示类型的下界,类型参数是T的超类(包括T本身),那么可以肯定的说,get方法返回的一定是个T的超类,那么到底是哪个超类?不知道,但是可以肯定的说,Object一定是它的超类,所以get方法返回Object。编译器是可以确定知道的。对于add方法来说,编译器不知道它需要的确切类型,但是T和T的子类可以安全的转型为T。为什么?superNumber就可以add了呢?[2、3]首先要明确的一点是,add的时候只能是Number[T]及其它的子类,不要和numberSuper只能引用Number的父类所混淆了。正因为numberSuper引用了<Object>,那么numberSuper在add的时候类型确定,都可以看作是Object类型,即Number的子类Integer和Float也是其Object的子类。但是相对于?extendsT就add就不能调用,numbers如果限定了<Integer>,还是那句话,假若能放的话,number存放float类型的数据,取值时极易引发类型转化异常。泛型方法和类型通配符类型通配符所能解决的泛型方法一定也能解决#类型通配符`publicvoidfunc(List<?extendsE>list);`#泛型方法`public<TextendsE>voidfunc(List<T>list);`*上面两种方法可以达到同样的效果,两者的主要区别还是i.泛型对象是只读的,不可修改,因为?类型是不确定的,可以代表范围内任意类型;ii.而泛型方法中的泛型参数对象是可修改的,因为类型参数T是确定的(在调用方法时确定),因为T可以用范围内任意类型指定;泛型方法和类型通配符(上界和下界)我们应该如何选择?(1)泛型方法和通配符之间修改最好使用泛型方法,在多个参数、返回值之间存在类型依赖关系就应该使用泛型方法,否则就应该使用通配符。(2)什么时候用extends什么时候用superPECS:producer-extends,consumer-super.—《EffectiveJava》要从泛型类取数据时,用extends要往泛型类写数据时,用super
2020-09-21 18:35 · java
[分享] 数据库设计神奇PDMan
如果你用的是mac 系统,或者linux系统,或者windows系统,可以使用这个工具,如果你使用的是windows系统,可以使用EZDML这个工具。
2020-01-22 00:03 · 工具 / PDMan / 数据库设计 / 表结构设计
[问答] 飞艇技巧图片图解走势
同样即时设计的AI工具即时AI是一种全新的AIGC工具,可以通过自然语言描述在60s内生成高质量、高细节的Mobile/Web页面原型设计,适当的效率之王。
2024-03-07 15:25 · 闵东升
[问答] 仿美团APP案例
毕业设计自选了一个仿美团的外卖类APP但是没上几节Android课,页面设计好了但是不会写代码。求一个能运行的案例研究研究。有推荐的课程最好。可付费
2020-12-01 13:51 · Android
[分享] 网站配色设计 --好看的网站页面

提供了很多种类网站配色,配色舒适。缺点,网站响应有点慢,全英文 不过翻译在手 应该么的问题

2021-05-13 11:05 · 网站配色设计
[分享] 看懂了责任链模式,你就能明白很多
不知道大家是怎么学习设计模式的,一般我都是用到的时候,或者接触到的时候才会去学。否则感觉学完就很容易就忘掉了,不能理解为什么要使用设计模式(因为没有真实的场景给我去使用)。
2020-02-26 15:15 · 设计模式 / 经验总结 / Java
[问答] android的tab功能实现问题

设计稿如下


2021-10-16 18:19 · tabbar / adroid

[文章] 买电脑时,你应该了解的CPU知识!
Xeon系列:专为服务器、工作站市场设计,支持多路互联技术,具有高核心数、大内存容量和出色稳定性。
2024-02-19 11:57 · CPU / 组装机 / 电脑 / pc / 芯片
[问答] 乱七八糟的问题,何人来解
4、做这样的一个的网站,前后端用到了哪些框架,之前想写一个个人网站,想了好久,设计的界面太丑了,浏览器兼容性不知道怎么解决,老师能出一期做网站的视频吗?5、像本站这样的虚拟货币模块怎么设计
2019-10-18 22:34 · miscellaneous
[问答] 求助Android课程的领券联盟
在B站看到【领券联盟】显示分类数据-安卓项目开发实战课程毕业设计课程的第16集最后面的时候Log出现resultcodeis404,和老师的错误不一样啊!
2020-03-05 15:11 · Android
[文章] 腾讯暑假实习生初试面经
(复试就是问项目相关的(为啥采用这种设计),回答的不好)。面试中的问题有部分可能网络,这顺序也不是严格的提问顺序。
2021-03-19 09:24 · android / 实习生面试
[问答] 单activity应用中fragment之间跳转与通信
比如viewpager中的列表fragment点击条目跳转到另外一个详情fragment中应该如何设计
2020-03-25 18:21 · Android
[文章] 图片上传重构点记录(2021-2-24)
痛点:上传大小限制1M没有分类,只跟个人有关图片可重复上传图片访问没有做优化上传限制网站开始的时候是使用自己搭建的FastDFS,找个理由吧.一个人写了整个网站,前端后台,三个月时间,总有设计不好的地方的
2021-02-24 16:01 · 日常 / 后台 / javaweb / 重构 / 记录
[问答] Retrofit上传单个文件出错,Unknown bits set in runtime_flags: 0x8000
Call<PostFileResult>call,Throwablet){Log.d(TAG,"onFailure-->"+t.toString());}});}非计算机专业学生,毕业设计需要设计
2021-04-11 16:47 · Retrofit
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7