GVKun编程网logo

JAVA - 初步认识 - 常用对象 API (集合框架 - 泛型 - 泛型接口)(java泛型对象实例化)

2

关于JAVA-初步认识-常用对象API(集合框架-泛型-泛型接口)和java泛型对象实例化的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于02Java泛型,泛型类、泛型接口、泛型方法。注意

关于JAVA - 初步认识 - 常用对象 API (集合框架 - 泛型 - 泛型接口)java泛型对象实例化的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于02 Java 泛型,泛型类、泛型接口、泛型方法。注意泛型擦除、12-TypeScript 泛型接口、I can 前端-07 ASP.NET 常用对象、JAVA - 初步认识 - 常用对象 API (集合框架 - LinkedList 集合 - 练习栈堆和队列)等相关知识的信息别忘了在本站进行查找喔。

本文目录一览:

JAVA - 初步认识 - 常用对象 API (集合框架 - 泛型 - 泛型接口)(java泛型对象实例化)

JAVA - 初步认识 - 常用对象 API (集合框架 - 泛型 - 泛型接口)(java泛型对象实例化)

一.

什么叫泛型接口呢?之前的例子中创建了那么多类,很麻烦。

 

对截图的理解首先是,接口是抽象出来的类,声明之后,下面的类要进行实现。接口中的方法是实现的类都具备的。这里将接口和泛型结合起来。前面的章节中,是将泛型和类,方法结合起来。

泛型定义在类上,就是泛型类,定义在接口上,就是泛型接口。(接口定义了,肯定要实现)

 这里是在一个程序中将要表达的意思全部书写出来了,定义接口,类来实现,主函数中创建对象。在定义的时候,参数类型是不确定的,用泛型 T 来表示,但是在实现时,就必须指定了。

接下来还有进一步的发展,就是类在实现时,依旧无法确定参数的类型,等到主函数中创建对象时,再去确定。

 这样运行也是没有问题的。

对于泛型接口的使用,分为两种。

 

02 Java 泛型,泛型类、泛型接口、泛型方法。注意泛型擦除

02 Java 泛型,泛型类、泛型接口、泛型方法。注意泛型擦除

万丈高楼平地起!
没有地基的高楼,摇摇晃晃;

筑基第二课,让我们来了解JAVA中的泛型

# 01 泛型 generic
理解泛型,先看看generic可以译为通用的类型;那什么是泛型呢?其实就是通用的类型;

程序编写一大原则:不要复制自己,不要写重复性的代码;而泛型就可以实现这一点;

# 02 泛型语法
泛型使用<T>来表示泛型;如泛型类 public class Class<T> {}

# 03 泛型类、泛型接口、泛型方法、通配符
泛型类 public class Generic<T>{}
泛型接口 public interface Generic<T>{}
泛型方法 public void show(T t) {}
通配符 public void printListElement(List<?> list) {

# 04 泛型擦除
泛型只能在编译期间生效,在程序运行时类型会被替换成具体的数据类型;

12-TypeScript 泛型接口

12-TypeScript 泛型接口

上一节说了泛型类, 这一节说一下泛型接口, 举例

// 第一种泛型接口写法
interface MyDate {
    <T>(value: T): T;
}

let date: MyDate = function getDate<T>(value: T) {
    return value;
}

let value = date<number>(12345);
console.log(value);


// 第二种泛型接口写法
interface MyDate1<T> {
    (value: T): T;
}

function getDate<T>(value: T) {
    return value;
}

let date1 = getDate;
let value1 = date1<string>("dudu");
console.log(value1)

**

I can 前端-07 ASP.NET 常用对象

I can 前端-07 ASP.NET 常用对象

总结

以上是小编为你收集整理的I can 前端-07 ASP.NET 常用对象全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

JAVA - 初步认识 - 常用对象 API (集合框架 - LinkedList 集合 - 练习栈堆和队列)

JAVA - 初步认识 - 常用对象 API (集合框架 - LinkedList 集合 - 练习栈堆和队列)

一. 练习

对于面试常出现的问题进行介绍。

这里有两个数据结构,对两者进行一个介绍。

队列像管子,从左端开始进入,随着后面的进入,先进入的被挤到右端,直到先从右端挤出。

为了符合项目中的需求,现在准备做这两个机构,完成我们的实际需求。

有人说,采用前一节讲述的 removeFisrt,不是这样来操作的,需求是指让你做个具备特定功能的容器出来,而不是自己书写一下这样的操作。

我们应该描述这样一个容器,给使用者提供一个容器对象来完成这两种结构中的一种。

二.

现在描述一下队列,先编写一个类来描述一下。队列容器有一个特点,能完成先进先出的的操作,调用玩添加方法,调用取的方法时,怎么存进去就怎么取出来。

当我们自己做容器比较困难的话,可以依赖于现有的容器。

截图中有两点需要注意:这个类的功能不是继承来的,而是通过类中定义一个特定类型的对象,接着将特定类型对象的方法提取出来作为自己创建对象的方法。

注意:这种在内部创造特定类型对象,而不是继承特定对象的方法,可以使得自己创建的对象,具备特定的功能,而没有其它功能,看着比较简洁。

添加和取出的方法,有 first 和 last 的标注,两者不同就是队列,相同 (addLast 和 removeLast) 就是堆栈。

最后要判断容器中有没有元素。存和取挺容易知道,但是这个判断也是必须的么?

本例中,创建的类将 LinkList 的方法全部封装起来的了,封装完后,就看不到 LinkList 了,看到的只能是我们自己创建的类。

其实这么写不太合适,应该提供一个工具类。

应该提供一个工具类,叫做队列这么一个类,把定义的内容都拿到这个类里面,因为这样是单独的一个对象。同时,DuiLie () 前面还要带上 public,这要暴露出去方便使用。

有了定义好的工具类,之前的例子可以换一种写法。

后期 1.6 版本又提供了一些新的方法,在 LinkList 链表结构当中。如下图所示。

这些方法和现有方法的功能是相同的,但是有些区别,升级是有原因的。

区别需要知道,开发的时候明确用哪个方法。

getFirst 方法有个特点,如果链表里面什么也没有,调用该方法的话,是没有东西的。它会抛出异常,这个异常叫做没有这个元素异常。

对于它的替代方法 peak 来讲,没有元素的话,返回 null。空意味着我可以做判断,

 LinkList 相对 ArrayList 要少用一些,因为我们更多是以查询动作为主。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

--- 恢复内容结束 ---

一. 练习

对于面试常出现的问题进行介绍。

这里有两个数据结构,对两者进行一个介绍。

队列像管子,从左端开始进入,随着后面的进入,先进入的被挤到右端,直到先从右端挤出。

为了符合项目中的需求,现在准备做这两个机构,完成我们的实际需求。

有人说,采用前一节讲述的 removeFisrt,

 

关于JAVA - 初步认识 - 常用对象 API (集合框架 - 泛型 - 泛型接口)java泛型对象实例化的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于02 Java 泛型,泛型类、泛型接口、泛型方法。注意泛型擦除、12-TypeScript 泛型接口、I can 前端-07 ASP.NET 常用对象、JAVA - 初步认识 - 常用对象 API (集合框架 - LinkedList 集合 - 练习栈堆和队列)等相关内容,可以在本站寻找。

本文标签: