- 博客(83)
- 收藏
- 关注
原创 面向对象特性三:多态
主要原因是这些设备在生产的时候符合了这个插口的使用规则,否则将无法插入接口中,更无法使用。在开发中如果多个接口中存在相同方法,这时若有个类实现了这些接口,那么就要实现接口中的方法,由于接口中的方法是抽象方法,子类实现后也不会发生调用的不确定性。Java中多态的代码体现在一个子类对象(实现类对象)既可以给这个子类(实现类对象)引用变量赋值,又可以给这个子类(实现类对象)的父类(接口)变量赋值。学习类的时候,知道类与类之间可以通过继承产生关系,接口和类之间可以通过实现产生关系,那么接口与接口之间会有什么关系。
2024-10-16 23:27:15
1129
原创 面向对象特性二:继承
在现实生活中,继承一般指的是子女继承父辈的财产。在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。例如公司中的研发部员工和维护部员工都属于员工,程序中便可以描述为研发部员工和维护部员工继承自员工,同理,JavaEE工程师和Android工程师继承自研发部员工,而维网络维护工程师和硬件维护工程师继承自维护部员工。这些员工之间会形成一个继承体系,具体如下图所示。
2024-10-11 21:51:27
1053
原创 面向对象特性一:封装
提起封装,大家并不陌生。前面我们学习方法时,就提起过,将具体功能封装到方法中,学习对象时,也提过将方法封装在类中,其实这些都是封装。封装,它也是面向对象思想的特征之一。面向对象共有三个特征:封装,继承,多态。接下来我们具体学习封装。
2024-10-11 11:16:48
1181
原创 通过Android studio编写用户注册信息表单(实现用户交互)小demo,话不多说直接上小demo
【代码】通过Android studio编写用户注册信息表单(实现用户交互)小demo,话不多说直接上小demo。
2024-08-25 22:17:17
525
原创 IT老王:redis
Redis 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库,官方提供测试数据,50个并发执行100000个请求,读的速度是110000次/s,写的速度是81000次/s,且 Redis 通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止 Redis 支持的键值数据类型如下: 字符串类型 String 哈希类型 Hash 列表类型 List 集合类型 Set 有序集合类型 sortedset。nosql这个技术门类的出现,更好的解决了这些问题,它告诉了世界不仅仅是sql。
2024-08-14 22:15:31
1183
原创 Scala 模式匹配
Scala 提供了强大的模式匹配机制,应用也非常广泛。一个模式匹配包含了一系列备选项,每个都开始于关键字。每个备选项都包含了一个模式及一到多个表达式。箭头符号隔开了模式和表达式。
2024-05-20 20:55:15
486
原创 Scala Iterator(迭代器)
Scala Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法。迭代器 it 的两个基本操作是和。调用会返回迭代器的下一个元素,并且更新迭代器的状态。调用用于检测集合中是否还有元素。
2024-05-20 20:53:57
1182
原创 Scala Map(映射)
Map(映射)是一种可迭代的键值对(key/value)结构。所有的值都可以通过键来获取。Map 中的键都是唯一的。Map 也叫哈希表(Hash tables)。Map 有两种类型,可变与不可变,区别在于可变对象可以修改它,而不可变对象不可以。默认情况下 Scala 使用不可变 Map。如果你需要使用可变集合,你需要显式的引入类在 Scala 中 你可以同时使用可变与不可变 Map,不可变的直接使用 Map,可变的使用 mutable.Map。定义 Map 时,需要为键值对定义类型。
2024-05-10 21:11:06
740
原创 Scala List(列表)
Scala 列表类似于数组,它们所有元素的类型都相同,但是它们也有所不同:列表是不可变的,值一旦被定义了就不能改变,其次列表 具有递归的结构(也就是链接表结构)而数组不是。。列表的元素类型 T 可以写成 List[T]。
2024-05-09 23:06:37
611
原创 Scala特殊符号含义
用于字符串拼接, +=为可变数组添加元素,可以用来加数值也可以用来拼接字符串,取决于等式左边是什么类型,但是++=只能拼接字符串。::是右侧对象的方法,即它是对象b的方法,而::左侧的运算数是::方法的参数,所以1::b的含义是b.::(1)syntactic sugar 语法糖:把需要的参数、类型、函数最简化,由编译器来解析(去糖化)//如果不需要所有部件,则在不需要的部件使用_;用于连接两个Seq,eg:列表、集合、字符串、Map etc。b 有两个参数,调用是必须有两个 Int 类型的参数。
2024-05-09 22:17:55
826
原创 Scala 类和对象
类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。
2024-05-08 23:03:01
1265
2
原创 Scala- 数组
Scala 语言中提供的数组是用来存储固定大小的同类型元素数组对于每一门编程语言来说都是重要的数据结构之一。声明数组变量并不是声明 number0、number1、...、number99 一个个单独的变量,而是声明一个就像 numbers 这样的变量,然后使用 numbers[0]、numbers[1]、...、numbers[99] 来表示一个个单独的变量。数组中某个指定的元素是通过索引来访问的。数组的第一个元素索引为0,最后一个元素的索引为元素总数减1。
2024-04-24 22:56:05
1054
原创 Scala-字符串
以上实例定义了变量 greeting,为字符串常量,它的类型为 String (java.lang.String)。在 Scala 中,字符串的类型实际上是 Java String,它本身没有 String 类。在 Scala 中,String 是一个不可变的对象,所以该对象不可被修改。这就意味着你如果修改字符串就会产生一个新的字符串对象。但其他对象,如数组就是可变的对象。接下来我们会为大家介绍常用的 java.lang.String 方法。
2024-04-24 22:24:36
1155
原创 实现尾递归优化
当loop(1, 120)返回120时,就是最终的结果,不需要再从栈顶到栈底依次计算结果。这样做的优点是,无论n多大,都只会产生一个调用栈,节省了内存空间,也避免了栈溢出。,每次调用自身都会保存当前的参数和返回位置,等待下一次调用返回结果。为什么要进行尾递归优化,是因为尾递归可以减少调用栈的占用,从而避免栈溢出的风险,提高性能和内存利用率。当factorial(1)返回1时,才开始从栈顶到栈底依次计算结果,最后返回120。,每次调用自身都不会保存当前的参数和返回位置。这个函数在计算阶乘的过程中,
2024-04-18 21:51:17
744
原创 Scala - 函数柯里化(Currying)
柯里化(Currying)指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原有第二个参数为参数的函数。
2024-04-11 01:14:40
590
原创 Scala - 高阶函数
Scala 中允许使用高阶函数, 高阶函数可以使用其他函数作为参数,或者使用函数作为输出结果。高阶函数(Higher-Order Function)就是操作其他函数的函数。
2024-04-11 01:11:00
603
原创 Scala - 偏应用函数
我们可以使用偏应用函数优化以上方法,绑定第一个 date 参数,第二个参数使用下划线(_)替换缺失的参数列表,并把这个新的函数值的索引的赋给变量。实例中,log() 方法接收两个参数:date 和 message。我们在程序执行时调用了三次,参数 date 值都相同,message 不同。Scala 偏应用函数是一种表达式,你不需要提供函数需要的所有参数,只需要提供部分,或不提供所需参数。
2024-04-11 01:09:44
307
原创 Scala函数参数
Scala 可以为函数参数指定默认参数值,使用了默认参数,你在调用函数的过程中可以不需要传递参数,这时函数就会调用它的默认参数值,如果传递了参数,则传递值会取代默认值。Scala 允许你指明函数的最后一个参数可以是重复的,即我们不需要指定函数参数的个数,可以向函数传入可变长度参数列表。在进入函数内部前,传值调用方式就已经将参数表达式的值计算完毕,而传名调用是在函数内部进行参数表达式的值计算的。传值调用(call-by-value):先计算参数表达式的值,再应用到函数内部;[老王讲IT 性感有魅力]
2024-04-11 01:01:41
677
原创 System.currentTimeMillis()
Java中System.currentTimeMillis()返回的毫秒,这个毫秒其实就是自1970年1月1日时起的毫秒数。Java中System.nanoTime()返回的是纳秒,nanoTime返回的可能是任意时间,甚至可能是负数。1纳秒=0.000000001秒。1纳秒=0.000001毫秒。
2024-04-10 22:41:39
715
原创 简述view和viewgroup的含义和关系:
View表示屏幕上的一个独立的可见元素,而ViewGroup表示屏幕上的一个容器,能够包含其他View或ViewGroup,它们之间的关系是View可以直接放在Activity或Fragment中,而ViewGroup则是一种容器,用来包含多个View或ViewGroup。View和ViewGroup之间的关系是,View可以直接放在Activity或Fragment中,而ViewGroup则是一种容器,用来包含多个View或ViewGroup。,它们是构建屏幕上可见元素的基础。
2024-03-31 22:07:01
341
原创 Scala IF...ELSE 语句
Scala IF...ELSE 语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
2024-03-27 15:23:03
1533
2
原创 IT老王:Scala 运算符
一个运算符是一个符号,用于告诉编译器来执行指定的数学运算和逻辑运算。Scala 含有丰富的内置运算符,包括以下几种类型:算术运算符关系运算符逻辑运算符位运算符赋值运算符接下来我们将为大家详细介绍以上各种运算符的应用。
2024-03-20 22:37:39
1523
原创 Scala_伴生对象
scala 允许定义 和class结构同名的 object结构object称之为 伴生对象class 称之为 伴生类当只有 object对象时,我们也称这个对象为 单例对象、孤立对象伴生对象 和 伴生类(如果定义了) 必须在一个scala源文件中。
2024-03-20 21:45:27
878
原创 Java变量内存存储
在Java中,基本数据类型的变量存储在栈内存(Stack)中,而对象的引用存储在栈内存中,而对象本身存储在堆内存(Heap)中。类的实例是一个对象,它存储在堆内存中,包含两个基本数据类型字段和一个对象引用字段。是一个对象引用,它存储在栈内存中,指向堆内存中存储的。是基本数据类型,它们的值直接存储在栈内存中。
2024-03-17 21:43:12
799
原创 IT老王 : Scala变量
为什么需要变量?一个程序就是一个世界,在scala中一切都是对象变量是一种使用方便的占位符,用于引用计算机内存地址,变量创建后会占用一定的内存空间。基于变量的数据类型,操作系统会进行内存分配并且决定什么将被储存在保留内存中。因此,通过给变量分配不同的数据类型,你可以在这些变量中存储整数,小数或者字母。
2024-03-14 01:19:00
1384
原创 IT老王:观察App的运行日志
以前写Java代码的时候,通过 System.out.println可以很方便地向IDEA的控制台输出日志,当然Android Studio也允许查看App的运 行日志,只是Android不使用System.out.println,而是采用Log工具打印日志。一般而言,日常开发使用Log.d即可,下面是给App添加日志信息的代码例子: (完整代码见app\src\main\java\com\example\app\MainActivity.java)
2024-03-09 23:24:58
635
原创 IT老王:Android之project目录结构详解
project目录结构会经常使用,project目录和我们使用的 My Eclipse的相似,也会比较熟悉。
2024-03-02 21:58:03
988
原创 IT老王:Android开发环境搭建
安卓(Android)是一种基于Linux内核的自由及开放源代码的操作系统。主要使用于移 动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。Andr oid操作系统最初由Andy Rubin开发,主要支持手机。
2024-03-02 17:50:09
641
原创 IT老王:方法和函数
方法定义由一个 def 关键字开始,紧接着是可选的参数列表,一个冒号 : 和方法的返回类型,一个等于号 = ,最后是方法的主体。def functionName ([参数列表]) : [return type] = {以上代码中 return type 可以是任意合法的 Scala 数据类型。参数列表中的参数可以使用逗号分隔。
2024-02-22 17:31:46
1030
原创 IT老王:Scala循环
当在循环中使用 break 语句,在执行到该语句时,就会中断循环并执行循环体之后的代码块。注意大括号中用于保存变量和条件,retVal 是变量, 循环中的 yield 会把当前的元素记下来,保存在集合中,循环结束后将返回该集合。一般情况下,语句是按顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。不像 while 循环在循环头部测试循环条件, Scala 语言中,do...while 循环是在循环的尾部检查它的条件。以上语法中, List 变量是一个集合,for 循环会迭代所有集合的元素。
2024-02-22 15:38:52
959
原创 IT老王:Scala基础语法
然而以"$"开头的标识符为保留的 Scala 编译器产生的标志符使用,应用程序应该避免使用"$"开始的标识符,以免造成冲突。注意:默认情况下,Scala 总会引入 java.lang._ 、 scala._ 和 Predef._,这里也能解释,为什么以scala开头的包,在使用时都是省去scala.的。Scala.Null和scala.Nothing是用统一的方式处理Scala面向对象类型系统的某些"边界情况"的特殊类型。Null类是null引用对象的类型,它是每个引用类(继承自AnyRef的类)的子类。
2024-02-22 12:35:32
1331
原创 IT老王:Scala讲义
Scala将面向对象和函数式编程结合在一个简洁的高级语言中。Scala的静态类型有助于避免复杂应用程序中的错误,其JVM和JavaScript运行时可让您构建高性能系统,轻松访问庞大的库生态系统。
2024-02-22 10:32:29
1401
pygame-2.1.0-cp38-cp38-win-amd64.whl
2024-01-25
pygame-2.1.0-cp36-cp36m-win-amd64.whl
2024-01-25
Javaweb入门资源
2024-01-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人