
开发
文章平均质量分 70
晚风Dai
这个作者很懒,什么都没留下…
展开
-
【Java多线程】创建多线程的方式二---实现Runnable接口(多窗口卖票)
在第四步中的运行过程:①启动线程 ②调用当前线程的run()-->调用了Runnable类型的target的run()。如果我们不用static修饰改这么写?这个时候引入了创建多线程的方式二---->实现Runnable接口。我们可以看到窗口1,2,3都卖了票号为100的票,这个时候就要讲到线程的安全问题。因为是三个窗口共卖100张所以我们在定义ticket时要用到static来修饰。如果我们再启动一个线程,遍历100以内的偶数。题:创建三个窗口卖票,总票数为100张。举例说明:遍历100以内的偶数。原创 2023-01-18 17:05:44 · 1274 阅读 · 0 评论 -
【Java多线程】线程的优先级
如果装的是1.8选的9则会报错。idea快捷键ctrl+alt+shift+s。我们看一下这个工程用的jdk。我们将分线程的优先级设置为。将主线程的优先级设置为。原创 2023-01-17 23:56:15 · 1673 阅读 · 0 评论 -
【Java多线程】线程的常用方法
9.sleep(long millis):使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行),具体取决于系统定时器和调度程序的精度和准确性。7.join():在线程a中调用线程b的join(),此时线程就进入阻塞状态,直到线程b完全执行完以后,线程a才结束阻塞状态。在线程a中调用线程b的join(),此时线程就进入阻塞状态,直到线程b完全执行完以后,线程a才结束阻塞状态。2.run():通常需要重写Thread类中的此方法,将创建的线程要执行的。4.getName():获取当前线程的名字。原创 2023-01-15 16:34:33 · 1028 阅读 · 2 评论 -
【Java多线程】继承方式练习
2.重写Thread类的run() --> 将此线程执行的操作声明在run()中。1.创建一个继承于Thread类的子类。3.创建Thread类的子类的对象。4.通过此对象调用start()我们可以使用最直接的办法,写两个类继承Thread类。原创 2023-01-11 17:01:33 · 107 阅读 · 0 评论 -
【Java多线程】创建多线程方式一
4. 一个线程对象只能调用一次start()方法启动,如果重复调用了,则将抛出以上 的异常“IllegalThreadStateException”。2. run()方法由JVM调用,什么时候调用,执行的过程控制都有操作系统的CPU调度决定。同时我们发现run()方法由JVM调用,什么时候调用,执行的过程控制都有操作系统的CPU。1. 如果自己手动调用run()方法,那么就只是普通方法,没有启动多线程模式。方法来完成操作的,经常 把run()方法的主体称为。创建线程并指定线程实例名。方法:启动线程,调用。原创 2023-01-10 17:09:11 · 513 阅读 · 0 评论 -
【Java异常】处理异常
3.一旦try中的异常对象匹配到某一个catch时,就会进入catch中进行异常处理一旦处理完成,就跳出当前的try—catch结构(在没有写finally的情况)继续执行其后的代码。4.catch中的异常类型如果没有子父类关系,则谁声明在上,谁声明在下无所谓catch中的异常类型如果满足子父类关系,则要求子类一定声明在父类的上面,否则报错。2.使用try将可能出现异常代码包装起来,在执行过程中,一旦出现异常,就会生成一个异常类的对象根据此对象的类型,去catch中进行匹配。1.finally是可选的。原创 2022-12-20 22:28:46 · 404 阅读 · 0 评论 -
【Android Studio程序开发】按钮触控---按钮控件Button
除了文本视图之外,按钮Button也是一种基础控件。因为Button是由TextView派生而来,所以文本视图 拥有的属性和方法,包括文本内容、文本大小、文本颜色等,按钮控件均能使用。不同的是,Button拥有默认的按钮背景,而TextView默认无背景;Button的内部文本默认居中对齐,而TextView的内部文本 默认靠左对齐。此外,按钮还要额外注意textAllCaps与onClick两个属性,分别介绍如下:1.textAllCaps属性对于TextView来说,text属性设置了什么文本,文本视图原创 2022-12-07 11:38:15 · 5385 阅读 · 0 评论 -
【Android Studio】常用布局 --- 滚动视图ScrollView
与线性布局类似,滚动视图也分为垂直方向和水平方向 两类,其中垂直滚动视图名为ScrollView,水平滚动视图名为。(1)垂直方向滚动时,layout_width属性值设置为match_parent,layout_height属性值设置为wrap_content。(2)水平方向滚动时,layout_width属性值设置为wrap_content,layout_height属性值设置为match_parent。(3)滚动视图节点下面必须且只能挂着一个子布局节点,否则会在运行时报错。运行测试App,可知。原创 2022-11-16 22:41:07 · 18971 阅读 · 0 评论 -
【Android Studio程序开发】常用布局--网格布局GridLayout
下面是运用网格布局的XML布局样例,它规定了一个两行两列的网格布局,且内部容纳四个文本视图。虽然线性布局既能在水平方向排列,也能在垂直方向排列,但它不支持多行多列的布局方式,只支持单 行(水平排列)或单列(垂直排列)的布局方式。由上图可见,App界面的第一行分布着浅红色背景与橙色背景的文本视图,第二行分布着绿色背景与 深紫色背景的文本视图,说明利用网格布局实现了多行多列的效果。,它先从第一行从左往右放置下级视图,塞满之后另起一行放置 其余的下级视图,如此循环往复直至所有下级视图都放置完毕。原创 2022-11-01 00:36:41 · 2027 阅读 · 0 评论 -
【Android Studio程序开发】常用布局--相对布局RelativeLayout
线性布局的下级视图是顺序排列着的,另一种相对布局的下级视图位置则由其他视图决定。相对布局名 为RelativeLayout,因为下级视图的位置是相对位置,所以得有具体的参照物才能确定最终位置。用于确定下级视图位置的参照物分两种,一种是与该视图自身平级的视图;另一种是该视图的上级视图 (也就是它归属的RelativeLayout)。上述XML文件的布局效果如下图所示,RelativeLayout的下级视图都是文本视图,控件上的文字说明 了所处的相对位置,具体的控件显示方位正如XML属性中描述的那样。原创 2022-10-24 20:26:54 · 2153 阅读 · 0 评论 -
【Android Studio程序开发】常用布局--线性布局LinearLayout
假设线性布局平均分为左 右两块,则甲视图和乙视图的权重比为1:1,意味着两个下级视图的layout_weight属性都是1。顾名思义,线性布局 像是用一根线把它的内部视图串起来,故而内部视图之间的排列顺序是固定的,要么从左到右排列,要 么从上到下排列。除了方向之外,线性布局还有一个权重概念,所谓权重,指的是线性布局的下级视图各自拥有多大比例 的宽高。就线性布局而言,它自身的尺寸相当于一整块蛋糕,它的下级视图们一起来分这个尺寸蛋糕,有的 视图分得多,有的视图分得少。原创 2022-10-18 22:20:17 · 3848 阅读 · 0 评论 -
【Android Studio程序开发】视图显示--设置视图的对齐方式
App界面上的视图排列,默认靠左朝上对齐,这也符合日常的书写格式。在XML文件中通过属性android:layout_gravity可以指定当前视图的对齐方向,当属性值为top时表 示视图朝上对齐,为bottom时表示视图朝下对齐,为left时表示视图靠左对齐,为right时表示视图靠右 对齐。它与layout_gravity的不同之处在于:layout_gravity设定了当 前视图相对于上级视图的对齐方式,而gravity设定了下级视图相对于当前视图的对齐方式;原创 2022-10-08 18:27:09 · 2227 阅读 · 1 评论 -
【Android Studio程序开发】视图显示 -- 设置视图的间距
同样是设置间距,layout_margin指的是当前视图与外部视图(包括上级视图和平级视图)之间的距 离,而padding指的是当前视图与内部视图(包括下级视图和内部文本)之间的距离。中间层的黄色背景布局,同时设置了20dp的layout_margin,以及60dp的padding,其中padding是layout_margin的三倍宽(60/20=3)。这种情况印证了:layout_margin指的是当前图层与外部图层的距离,而padding指的是当前图层与内部图层的距离。接下来做个实验,看看。原创 2022-10-06 22:10:07 · 2285 阅读 · 0 评论 -
【Android Studio程序开发】视图基础--设置视图的宽高
对于文本视图来说,内部文字需要多大的显示空间,当前视 图就要占据多大的尺寸。在XML文件中采用以上任一方式均可设置视图的宽高,但在Java代码中设置宽高就有点复杂了,首先确 保XML中的宽高属性值为wrap_content,这样才允许在代码中修改宽高。运行测试App,打开演示界面如图3-7所示,依据背景色判断文本视图的边界,可见wrap_content方式 刚好包住了文本内容,match_parent方式扩展到了与屏幕等宽,而300dp的宽度介于前两者之间(安卓 手机的屏幕宽度基本为360dp)。原创 2022-10-04 15:41:35 · 3598 阅读 · 0 评论 -
【Android Studio程序开发】文本显示 -- 设置文本的颜色
该标准又有八位十六进制数与六 位十六进制数两种表达方式,例如八位编码FFEEDDCC中,FF表示透明度,EE表示红色的浓度,DD表示 绿色的浓度,CC表示蓝色的浓度。在设置背景图片之前,先将图片文件放到res/drawable***目录(以drawable开头的目录,不仅仅是drawable目录),然后把android:background的属性值改为“@drawable/不含扩展名的图片名称”,或者调用setBackgroundResource方法填入“R.drawable.不含扩 展名的图片名称”原创 2022-10-02 22:41:58 · 11616 阅读 · 0 评论 -
【Android Studio程序开发】文本显示--设置文本的大小
假设某个App的内部文本使用字 号30px,则该App安装到前一部手机的字体大小为15dp,安装到后一部手机的字体大小为10dp,显然 后一部手机显示的文本会更小。一般来说,同样尺寸的屏 幕以dp计量的分辨率是相同的,比如同样是6英寸手机,无论它由哪个厂家生产,其分辨率换算成dp单 位都是一个大小。一般来说,同样尺寸的屏幕(比如6英寸手 机),如果看起来越清晰,则表示像素密度越高,以px计量的分辨率也越大。接着打开手机的设置菜单,依次选择“显示”→“字体与显示大小”,确认当前的字体为标准大小,如下图所示。原创 2022-09-30 20:34:51 · 8126 阅读 · 0 评论 -
【Android Studio程序开发】文本显示--设置文本内容
看到提示内容为“Hardcoded string "你好,世界", should use @string resouce”,意思说这几个字是硬编码的字符串,建议使用来自@string的资源。原来Android Studio不推荐在XML布局文件里直接写字符串,因为可能有好几个页面都显示“你好,世界”,若想把这句话换成“你吃饭了吗?至此不管XML文件还是Java代码都从strings.xml引用字符串资源,以后想把“你好,世界”改为其他文字的话,只需改动strings.xml一个地方即可。原创 2022-09-27 21:23:46 · 7570 阅读 · 0 评论