当前位置: 首页 > news >正文

电影网站的建设目标青岛企业建站系统

电影网站的建设目标,青岛企业建站系统,资兴网站设计,长春建设集团股份有限公司网站一、包装类(Wrapper Class) 1、包装类的定义 在Java中数据分为两大类: 基础数据类型(内置数据类型)引用类型 其中基础数据类型(byte int long double boolean char......)和C语言接近是早期…

一、包装类(Wrapper Class)

1、包装类的定义

在Java中数据分为两大类:

  1. 基础数据类型(内置数据类型)
  2. 引用类型

其中基础数据类型(byte int long double boolean char......)和C语言接近是早期为了吸引C语言的程序员。后续 Java 有引入了一系列更进阶的语法机制,而这些机制又依赖于引用类型。

Java 希望把所有的类型统一成 Object 体系,让基础数据类型也可以使用 equals , clone 等方法。 于是在标准库中创建了一组类,将内置类型的变量包装一下,就有了包装类

只要在包装类中创建一个基础数据类型的成员,就可以在实现基础数据类型的同时,使用其他对象的方法

2、包装类的名称

8个基本数据类型分别提供了8个包装类分别对应

基本数据类型包装类
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean

除了 Integer 和 Character 其余基本类型的包装类都是首字母大写

3、装箱和拆箱

包装类虽然是类,但是在进行算术运算时还是需要转成内置类型再进行运算

内置类型 -> 包装类 的过程称为 装箱

包装类 -> 内置类型 的过程称为 拆箱

从 Java8 开始就有了自动装箱和自动拆箱的功能

二、泛型(Generics)

1、泛型的定义

是一种在软件开发中使用的一种技术,允许在定义类、接口和方法时使用一个或多个类型作为参数。

学习数组时我们知道,一个数组中只能存放一种数据类型

class MyArray{public int[] array = new int[10];public int get(int index){return this.array[index]; }public void set(int index,int value){array[index] = value;}
}

当我们实例化数组时只能使用 int 这个类型,如果我们需要使用其他类型时就需要再复制这段代码并修改数据类型。

我们可以通过将这段代码中的 int 类型换成泛型,让实例化时再决定数据类型,这样既可以是 int 也可以是 char,这样就提升了代码的复用率。

2、语法

class 泛型类名称<类型形参列表>{....
}class classname<T1,T2,...,Tn>{....
}

类名后的方括号 <> 代表占位符,表示当前类是一个泛型类

类型形参一般使用一个大写字母来表示,常用的有

  • E : Element
  • K : Key
  • V : Value
  • N : Number
  • T : Type
  • S、U、V 等等: 第二、第三、第四个类型

泛型的实例化:

泛型类<类型实参> 变量名 = new 泛型类<类型实参>(构造⽅法实参)

将前文说到的数组进行修改

class MyArrayTemplate <T>{private T[] array = (T[]) new Object[10];public T get(int index){return array[index];}public void set(int index,T value){//输入的数据类型是T类型,所以形参这也要写成Tarray[index] = value;}
}public class text1 {public static void main(String[] args) {MyArrayTemplate<Integer> arr1 = new MyArrayTemplate<Integer>();MyArrayTemplate<String> arr2 = new MyArrayTemplate<String>();//针对泛型参数来说,只能指定引用类型,不能指定内置类型//泛型这一套语法体系,底层还是靠 Object 这一系列的继承关系来完成的}
}

3、裸类型(Raw type)

裸类型是一个泛型类但是没有带着类型实参

MyArrayTemplate<> arr1 = new MyArrayTemplate<>();

不要主动去使用裸类型,这个语法是为了兼容老版本的 API 保留的机制

4、类型擦除

编译器在对泛型进行编译时会直接将 <T> 当做 Object 进行处理,只不过会在后面加上一系列类型检查,实例化时就会将 类型 与 Object 类型互相转换

5、泛型的上界

利用 Java 继承的特性来对泛型类的参数进行限制

语法:

class 泛型类名称<类型形参 extends 类型边界>{.....
}

6、泛型通配符

? 用于在泛型的使用就称做通配符

当类型被指定为 Integer 后就不能再被指定为 String ,如果我们需要接收所有的泛型类型,又不能够让用户随意修改就需要使用通配符来处理,代码如下:

public class text2 <t>{public static void main(String[] args) {text2<?> t = new text2<Integer>();t = new text2<String>();}
}
http://www.dtcms.com/a/554862.html

相关文章:

  • 【蓝牙】Bluetooth LE Primer 摘要与导读
  • 深度探讨“云+智能计算”,智算新基础设施分论坛议程揭晓 | 2025 龙蜥大会
  • 电话销售网站建设网站标题在哪里修改
  • 安卓蛙、苹果蛙为什么难互通?
  • 做难而正确的事,安踏为中国体育用品产业注入创新DNA
  • 做会计题目的网站1688关键词怎么优化
  • 直流充电桩多枪计量系统集成指南:基于RS485总线与地址寻址的并联通信
  • iis网站重定向设置嘉定建站公司
  • 企业网站设计思路公司网站设计案例
  • 高端网站设计新感觉建站如何修改wordpress登录页
  • 互联网+创新创业大赛项目计划书个人做seo怎么赚钱
  • 福州云建站建网站麻烦吗
  • VLM主流架构分析:Gemini 2.5 Pro 和 Qwen3-VL
  • vue3 - 图片放大镜效果实现
  • 毕业设计网站用什么做招聘网站大全58同城
  • 快速制作app软件优化网站目录结构
  • 网站怎么做切换图片东莞城建局官网
  • ps做网站学到什么程度网络正常但网页打不开
  • 开发实战 - ego商城 -补充:使用uniapp扩展组件
  • 大型网站开发实例wordpress产品页路径在哪儿
  • 怎么查网站注册信息网富公司收费大概多少钱
  • 做设备推广的网站怎么建个人网页
  • 企业实训|AI技术在高阶自动驾驶的应用——某央企汽车集团
  • 购物网站功能模块说明哪个网站开发好
  • 淮北矿业 集团 工程建设有限责任公司网站应用网站制作
  • 关于谷歌seo快速排名优化方法有哪些是什么 【深圳谷歌seo】
  • 028.爬虫专用浏览器-抓取#shadowRoot(closed)下
  • html播放视频邢台网站优化建设
  • 10.31 MySQL数据记录操作
  • 企业营销型网站设计wordpress如何跳转页面代码