java学习笔记10--泛型总结】的更多相关文章

package cn.temptation.test; import java.util.ArrayList; import java.util.Iterator; public class Sample01 { public static void main(String[] args) { ArrayList arrayList = new ArrayList(); arrayList.add("中国"); arrayList.add("美国"); // 下句会…
之前学习了java中从语法到常用类的部分.在编程中有这样一类需求,就是要保存批量的相同数据类型.针对这种需求一般都是使用容器来存储.之前说过Java中的数组,但是数组不能改变长度.Java中提供了另一种存储方式,就是用容器类来处理这种需要动态添加或者删除元素的情况 概述 Java中最常见的容器有一维和多维.单维容器主要是一个节点上存储一个数据.比如列表和Set.而多维是一个节点有多个数据,例如Map,每个节点上有键和值. 单维容器的上层接口是Collection,它根据存储的元素是否为线性又分为…
泛型: jdk1.5出现的安全机制 好处: 1.将运行时期的问题ClassCastException转到了编译时期. 2.避免了强制转换的麻烦. <>: 什么时候用? 当操作的引用数据类型不确定的时候,就使用<>.将要操作的引用数据类型传入即可. 其实<>就是一个用于接收具体引用数据类型的参数范围. 在程序中,只要用到了带有<>的类或者接口,就要明确传入的具体引用数据类型. 泛型技术是给编译器使用的技术,用于编译时期.确保了类型的安全. 运行时,会将泛型去掉…
"泛型"这个术语的意思就是:"使用与许多许多的类型".泛型在编程语言中出现时,其最初的目的是希望类或方法能够具备最广泛的表达能力.如何做到这一点呢,正是通过解耦类或方法与所使用的类型之间的约束.    在你创建参数化类型的一个实例时,编译器会为你负责转型操作并保证类型的正确性.看一个例子: public class Cat<T> { private T str; public Cat() { } public Cat(T str) { this.str…
31.编写当年龄age大于13且小于18时结果为true的布尔表达式age > 13 && age < 18 32.编写当体重weight大于50或身高大于160时结果为true的布尔表达式weight > 50 || height > 160 33.编写当体重weight>50且身高height大于160时结果为true的布尔表达式weight > 50 && height > 160 34.编写当体重weight大于50或身高h…
核心思想 1.ActionContext HttpServletRequest getAttribute setAttribute ActionContext get put //ActionContext.getContext() 获取入口 ActionContext.getContext().put("key", "value"); 2.ServletRequestAware package com.test.action; public class Login…
接口: 暂时可以理解为是一种特殊的抽象类 接口是功能的集合,可以看作是一种数据类型,是比抽象类更抽象的"类" 接口只描述所应该具备的方法,并没有具体实现,具体实现由接口的实现类(相当于接口的子类)来完成 这样将功能的实现与定义分离,优化了程序设计 接口的成员方法全抽象,不能存在带有方法体的方法 接口中无法定义普通的成员变量,必须定义为常量 接口定义抽象方法有固定格式 一切事物皆有功能,即一切事物都有接口 接口的定义规则: public interface MyInterface { p…
1.输入流,只能从中读取数据,而不能向其写出数据.输出流,只能想起写入字节数据,而不能从中读取. 2.InputStream的类型有: ByteArrayInputStream 包含一个内存缓冲区,字节从中取出. FileInputStream 从文件中获得字节. ObjectInputStream 用来恢复被序列化的对象. PipedInputStream 管道输入流,读取管道内容.多和PipedOutputStream一起用于多线程通信. SequenceInputStream 是多种输入流…
在开发中经常需要在创建初始化对象时候明确对象的属性值, 比如Person对象创建的时候就给Person的属性name,age赋值, 这里就要用到构造方法: 构造方法是类的一种特殊方法,它的特殊性体现在: 1.构造方法的方法名与类名相同. 2.构造方法是类的方法,它能够简化对象数据成员的初始化操作. 3.不能对构造方法指定返回值类型,它有隐含的返回值,该值由系统内部使用 4.构造方法一般不能由编程人员显式的直接调用,在创建一个类的对象的同时,系统会自动调用该类的构造方法将新的对象初始化. 5.构造…
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多态 第七章 接口与多态 第八章 异常处理 第九章 Collection与Map 第十章 输入/输出 第十一章 线程与并行API 第十二章 Lambda 第十三章 时间与日期 第十四章 NIO与NIO2 第十五章 通用API 第十六章 整合数据库 第十七章 反射与类加载器 第十八章 自定义类型.枚举 补充:Ja…
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Runtime Environment,Java运行环境),运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库. ③.JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种…
java学习笔记系列: java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--对象的初始化与回收 java学习笔记3--类与对象的基础 java学习笔记2--数据类型.数组 java学习笔记1--开发环境平台总结 本文地址:http://www.cnblogs.com/archimedes/p/java-study-note10.html,转载…
Java学习笔记之---集合 (一)集合框架的体系结构 (二)List(列表) (1)特性 1.List中的元素是有序并且可以重复的,成为序列 2.List可以精确的控制每个元素的插入位置,并且可以删除指定位置的元素 3.List的两个主要实现类是ArrayList和LinkedList (2)Arraylist 1.ArrayList底层是由数组实现的 2.动态增长,以满足应用程序的需求 3.在列表尾部插入和删除非常有效 4.更适合查找和更新元素 5.元素允许为null (3)List常用方法…
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条线程访问,一条线程在执行一个循环的过程中被中断,下一个线程则出现错误 因此,线程任务中可能引起错误的地方应当被一次执行完毕 同步代码块 用同步代码块改写上面的代码 package testpack; public class Test1 { public static void main(Strin…
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于对象 1.类和对象的关系 :            类是对同一类事物(对象)的抽象,对象是实际存在的该类的各种实体 创建的对象内存分析: 创建的对象存在栈区,开辟的内存空间存在于堆区,在堆区保存值  …
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ public static void main(String[] args) { ProcessArray pa=new ProcessArray(); int[] target={5,35,-2,35,-21}; pa.process(target, new Command(){ //匿名内部类…
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 局部变量 修饰方法:该方法不可被重写 final修饰成员变量 final修饰成员变量,必须显式的指定初始值,系统不会为final成员进行隐式初始化,不能在初始化前访问. 因为,不管是类变量还是实例变量,都有个初始化的过程,初始化赋值后便不能再赋值,如果不显式的指定初始值,那么这些变量就没有存在的意义…
20145330第八周<Java学习笔记> 第十五章 通用API 通用API 日志:日志对信息安全意义重大,审计.取证.入侵检验等都会用到日志信息 日志API Logger:注意无法使用构造方法生成Logger对象 Logger logger=Logger.getLogger("xxx"); getLevel setLevel 调用getLogger()时,必须指定Logger实例所属名称空间(Name Space),名称空间以"."作为层级区分,名称空…
20145330第七周<Java学习笔记> 第十三章 时间与日期 认识时间与日期 时间的度量 GMT(格林威治标准时间):现在不是标准时间 世界时(UT):1972年UTC出来之前,UT等价于GMT 国际原子时(TAI):秒的定义 世界协调时间(UTC):闰秒 Unix时间:1970.1.1 00:00开始的秒数 epoch:java.util.Date epoch毫秒数 日历 儒略历 格里高利历 ISO860标准 认识Date与Calender 时区 Date与DateFormat Date…
20145330第六周<Java学习笔记> . 这周算是很忙碌的一周.因为第六周陆续很多实验都开始进行,开始要准备和预习的科目日渐增多,对Java分配的时间不知不觉就减少了,然而第十和十一章内容相对有很多,所以效率是一件很重要的事情. 第十章 输入与输出 Java将输入输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象. 比喻来说,数据就好比水,串流就好比水管,通过水管的衔接,水由一端流向另一端 如果想要将数据从来源取出,可以使用输入串流. 如果想要将数据写入目的地,可以使用输出串流.…
1.构造函数概念 特点: 函数名与类名相同 不用定义返回值类型 没有具体的返回值 作用:                给对象进行初始化 注意: 默认构造函数 多个构造函数是以重载出现的 一个类中如果没有定义过构造函数,那么该类中会有一个默认的空参数的构造函数 如果在类中定义了构造函数,那么类中的默认构造函数就没有了 构造函数在创建对象时调用 构造函数也有默认的return语句(省略不写) 函数执行到return语句后,栈中该函数的方法区就会出栈 如: class Person{ private…
很多与AWT类似. 事件处理参考:Java学习笔记--AWT事件处理 1.设计模式: 模型:存储内容视图:显示内容控制器:处理用户输入· 2. 文本输入常用组件 2.1 文本域: JLabel labelname = new JLabel("username");JTextArea textname = new JTextArea(1,40);//参数也可以为("默认字符",行,列);JPanel panel = new JPanel();panel.add(lab…
java学习笔记04--数组 数组复制的方法是使用System类提供的arraycopy()方法,其语法如下: System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length); System.arraycopy(源数组,源数组中的起始位置,目标数组,目标数据中的起始位置,要复制的数组元素的数量); public class T { public static void main(String args[…
java学习笔记08--泛型 泛型可以解决数据类型的安全性问题,它主要的原理,是在类声明的时候通过一个标识标识类中某个属性的类型或者是某个方法的返回值及参数类型.这样在类声明或实例化的时候只要指定好需要的类型即可. class Point<T>{ private T var;     //var的类型由T决定 即由外包决定 public T getVar() { return var; } public void setVar(T var) { this.var = var; } } publ…
java学习笔记10--枚举 在JDK1.5之前,java可以有两种方式定义新类型:类和接口.对于大部分面向对 象编程来说,这两种方法看起来似乎足够了,但是在一些特殊情况下,这些方法就不适合.例如,想定义一个Color类,它只能有Red .Green. Blue三种值,其他的任何值都是非法的,那么JDK1.5之前虽然可以构造这样的代码,但是要做很多的工作,也有可能带来各种不安全的问题.而 JDK1.5之后引入的枚举类型(Enum)就能避免这些问题. 所谓的枚举就是规定好了指定的取值范围,所有的内…
java学习笔记13--比较器(Comparable.Comparator) 分类: JAVA 2013-05-20 23:20 3296人阅读 评论(0) 收藏 举报 Comparable接口的作用 之前Arrays类中存在sort()方法,此方法可以直接对对象数组进行排序. Comparable接口 可以直接使用java.util.Arrays类进行数组的排序操作,但对象所在的类必须实现Comparable接口,用于指定排序接口. Comparable接口的定义如下: public  int…
</pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p><h3 style="margin:0px; padding:0px; color:rgb(51,51,51); font-family:Arial; line-height:26px; text-indent:28px">第三部分:显示全局异常信息,而不是局部异常信息.<…
Hadoop学习笔记(10) ——搭建源码学习环境 上一章中,我们对整个hadoop的目录及源码目录有了一个初步的了解,接下来计划深入学习一下这头神象作品了.但是看代码用什么,难不成gedit?,单步调试呢? 看程序不能调那多痛苦啊,想看跟踪一下变量,想看一下执行路径都难. 所以这里,我们得把这个调试环境搭建起来.Hadoop的主要代码是用java编写的,所以这里就选用eclipse作为环境. Hadoop目录下,本身就可以为作eclipse的一个工程来操作,但这里我不想,我想自己来建一个工程,…
20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就是狭义的网络编程范畴.在发送和接收数据时,大部分的程序设计语言都设计了专门的API实现这些功能,程序员只需要调用即可 网络编程技术 1.客户端网络编程步骤 客户端(Client)是指网络编程中首先发起连接的程序,客户端一般实现程序界面和基本逻辑实现,客户端的编程主要由三个步骤实现:步骤一是建立网…
20155234第九周<Java学习笔记>学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC(Java DataBase Connectivity)是Java联机数据库的标准规范 定义一组标准类与接口,应用程序需要联机数据库时调用这组标准API,标准API中接口会由数据库厂商操作,称为JDBC驱动程序 依操作方式可将驱动程序分为四种类型:JDBC-ODBC Bridge Driver:Native API…