JavaSE高级之集合类】的更多相关文章

​下面的内容是对java中的集合类进行的总结,过段时间会分享java的网路编程,多线程等内容,欢迎批评指正. 1.Java中的集合是用来存放对象的,即集合是对象的集合,对象是集合的元素,java API集合类位于java.util包中. 2.常用集合类: Collection接口,List接口, Set接口,Map接口.接口类结合泛型的使用 3.集合和数组的区别在于集合的长度是动态扩充的,数组中可以存放基本数据类型和引用数据类型,集合中只能存放引用数据类型. 4.java中的集合层次关系 接口:…
内部类 内部类概念: 所谓内部类(Inner Class),顾名思义,就是将一个类定义在另一个类的内部.内部的类称之为内部类. 内部类的主要特点: 内部类可以很好的实现隐藏,可以使用protected.private修饰符. 内部类可以直接访问外部类的所有成员,包括私有成员. 外部类不能直接访问内部类的成员,必须首先要建立内部类的对象才可以访问. 内部类可以解决一些问题,比如间接地去实现多继承.可以避免修改接口而实现同一个类中两种同名方法的调用. 成员内部类及应用 成员内部类特点: 成员内部类属…
反射机制 1.反射机制是什么?----英文单词是:reflect.在java.lang包下---这才是java最牛逼的技术 首先提前知道一句话----在java中,有了对象,于是有了类,那么有了类之后,也就有了反射 因此:学反射机制,需要做到一件事----把思想从以前的类中跳出来,将思想再拔高一个层次--站在类的头上思考问题   那么到底什么是反射机制? 就是用来动态的操作类( 含静态操作类本身[ 名字.修饰符.注解... ].动态操作类中的成员信息[ 属性.方法 ....] ) 为什么需要学习…
1.什么是设计原则? 设计原则就是面向对象的原则嘛,即:OOP原则 换句话说:就是为了处理类与类之间的关系( 包括接口.类中的方法 ) 2.OOP设计原则有哪些? 1).开闭原则:就是指对拓展开放.对修改关闭 -- 这个在我的javaSE的面向对象中说明过了 2).里式替换原则:继承必须确保父类的性质在子类中仍然成立 这个体现在什么地方?方法的重写嘛,因此:子类继承了父类,如果父类的方法不能满足自己的需求,那么最好别使用重写,而是保留父类中的方法,子类进行重载编写( 当然:我们一般都是重写_,但…
下面主要用到了java中的swing进行界面设计,当然java的GUI不如C#的设计的好看,不过原理还是要会的. 1. GUI Graphical User Interface 用户图形界面 a) 主要包括菜单栏,窗口,工具条,按钮等: b) Java提供了两个GUI开发的包 java.awt 和 java.swing, java.awt中的Component抽象类是javaGUI中所有类的父类.它规定了所有GUI组件的的的基本特性 j        ava.swing 是在java.awt 的…
反射概述 什么是反射? 反射的的概念是有smith1982年首次提出的,zhuy主要是指程序可以访问.检测和修改它本身状态或行为的一种能力. JAVA反射机制是运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能都调用它的任意一个方法: 这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制. 简单来说,反射机制指的是程序在运行时能够获取自身的信息.在JAVA中,只要给定类的名字,那么就可以通过反射机制来获得类的所有信息. 包括其访问修饰符.父类…
静态代理:需要代理对象和目标对象实现一样的接口.同一个接口,一个目标类实现,一个代理类实现,代理类除了目标类的方法还有别的增强方法优点:可以在不修改目标对象的前提下扩展目标对象的功能.缺点:1冗余.由于代理对象要实现与目标对象一致的接口,会产生过多的代理类.2不易维护.一旦接口增加方法,目标对象与代理对象都要进行修改. JDK动态代理:使用JDK的API动态地在内存中构建代理对象,从而实现对目标对象的代理功能.一个代理类能代理多个类型(实现多个类)静态代理编译时就已实现,是实际的class文件,…
在写案例之前,先简单回顾下泛型的知识 我们知道,java属于强变量语言,使用变量之前要定义,并且定义一个变量时必须要指明它的数据类型,什么样的数据类型赋给什么样的值. 所谓“泛型”,就是“宽泛的数据类型”,任意的数据类型.我们用<>来表示. 可以用在类上public class a<T> 可以用在接口上public interface  a<T> 可以用在方法的返回值上 public <T> T a(); 泛型类在定义的时候可以不指定类型,但是在使用的时候必…
在说反射之前,必须得先说说java的类加载器,类加载器的定义:将.class文件加载到内在中,并为之生成对应的Class对象. 一般有三种 1 Bootstrap ClassLoader 根类加载器也被称为引导类加载器,负责Java核心类的加载比如System,String等.在JDK中JRE的lib目录下rt.jar文件中2 Extension ClassLoader 扩展类加载器负责JRE的扩展目录中jar包的加载.在JDK中JRE的lib目录下ext目录3 Sysetm ClassLoad…
一.Java中的反射 3.说说你对Java中反射的理解 Java中的反射首先是能够获取到Java中要反射类的字节码,获取字节码有3种办法. class.forName(className) 类名.class this.getClass() 二.Java中的动态代理 1.写一个ArrayList的动态代理类(笔试题) (动态代理.静态代理,这部分需要进行复习)…
注解 ---- 英文:annotation 1.注解长什么样子? @xxxxxxx( 一些信息 ) ----- 这个信息可有可无 2.注解可以放在什么地方? 类本身的上面.属性的上面.方法的上面.参数的前面 3.注解的作用是什么? 1.用来标识一个事物( 方法.属性.参数...)有特殊的含义 2.用来消灭配置文件 详细点就是这样的: 1).用来充当注释的作用,仅仅相当于是一个文字的说明 如:@Deprecated        ---- 表示该方法是废弃的 2).用来做代码的检测 如:@over…
java8新特性 在前面已经见过一些东西了,但是:挖得有坑儿 1.lambda表达式 lambda表达式是jdk1.8引入的全新语法特性 它支持的是:只有单个抽象方法的函数式接口.什么意思? 就是说:这个接口下面只有一个抽象方法是真正属于自己的( 像那种从Object类里面继承过来的不算 ---- 所以这样严格来讲:这个接口里面就只有一个抽象方法是真正属于自己的 ) 什么时候会用这个东西? ---- 总的一句话是:传参的时候是一个函数式接口就会用( 这句话包含了很多东西,这里不理解没事儿,学完了…
网络编程基础知识 先来思考两个问题( 在这里先不解决 ) 如何准确的找到一台 或 多台主机? 找到之后如何进行通讯? 网络编程中的几个要素 IP 和 端口号 网络通讯协议:TCP / UDP 最后一句话 万物皆对象 1.IP介绍--英文:inetAdress--IP地址 作用:标记网络中每台计算机的身份,网络中每台计算机都有一个唯一的身份号码,就和人的身份证一样 举个例子:如127.0.0.1--指:本机地址( localhost ) IP的表示方法 ipv4 / ipv6 ipv4:由一个4字…
1.先认识一个类----File类 前言:IO相关的一些常识 I / O----输入输出 I     输入     input 0    输出     output I / o 按数据的流动方向来分----流动方向:指的是计算机的数据流动----其实这个是有参考系的,如:如果说想要把一个数据弄到主存中来,那我所处的角度(位置)就是主存,数据就只是我的目标,因此:这时读数据就是input(从另外的地方把数据读进来嘛),而从本身中(主存中)把数据弄到另一个地方去,那就是output--写数据(把数据…
1.异常的体系结构  注:Throwable是一个类,不是一个接口,这个类里面是描述的一些Error和Exception的共性,如图所示: 异常 / 错误是什么意思? 定义:指的是程序运行过程中,可能会发生一些不被期望的效果,它会阻止我们的程序按照指令去执行 而这种不被预期出现的结果,肯定需要抛出来告诉我们 而在java中,有一个定义好的规则--就是前面所提到的:Throwable( 意思是:可抛出的 ) Error又是什么意思? 错误:指的是物理上的问题,如:JVM虚拟机本身的问题 Excep…
4. 多线程 4.1 基本概念:程序.进程和线程 程序.进程和线程 程序:为了完成特定的任务,用某种语言编写的一组指令的集合.程序是一段静态的代码,静态对象. 进程:是程序的一次执行过程或正在运行的程序.(进程是一个任务).进程是一个动态的过程:有产生.存在和消亡的过程--即拥有生命周期. 程序是静态的,进程是动态的 进程作为资源分配的单位,系统在运行时会为每个进程分配不同的内存空间 线程:进程可进一步细化为线程,是一个程序内部的一条执行路径.一个进程可以包含一个或多个线程. 若一个进程同一时间…
第一章内容介绍 20 第二章JavaSE基础 21 一.Java面向对象 21 1. 面向对象都有哪些特性以及你对这些特性的理解 21 2. 访问权限修饰符public.private.protected, 以及不写(默认)时的区别(2017-11-12) 22 3. 如何理解clone对象 22 二.JavaSE语法(2017-11-12-wl) 26 1. Java有没有goto语句?(2017-11-12-wl) 26 2. & 和 && 的区别(2017-11-12-wl)…
  第一阶段(java基础知识) 计算机基础知识 Java开发环境的搭建和应用 机制转换 有符号数据表示法(原码.反码.补码) Java语句基础(关键字.标识符.注释.常量.变量.数据类型.运算符) 程序流程控制语句及应用(if.switch.for.while) 函数及其应用 数组及其应用 水仙花.斐波那契数列.数据加密 等经典问题的讲解.   第二阶段(面向对象) 面向对象思想 类与对象 类的组成 封装及其应用 继承及其应用 多态及其应用 抽象类及其应用 接口及其应用 包.导包及其应用 单例…
Android面试 1. 内容介绍................................................................................................................................................................................................................... 8 2. JavaSE基础(★★)....…
// 2105/07/08 // DataAdapter&&DataSet using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data; using System.Data.SqlClient; namespace DataAdapter { class Program { stati…
对象和值的比较 CLR的类型系统(其实就是通用类型系统(CTS),它定义了如何在运行库中声明,使用和管理类型,同时也是运行库支持跨语言集成的一个重要组成部分)将对应简单值的类型同对应传统"对象"的类型区分开来.前者被称为值类型(value type)(值类型直接包含它们的数据,值类型的实例要么在堆栈上,要么内联在结构中.值类型可以是内联的(由运行库实现),用户定义的或枚举的);后者被称为引用类型(reference type)(引用类型存储对值的内存地址的引用,位于堆上.引用类型可以是…
突然发现自己Java基础的底子不到位,复习! 所记知识会发布在CSDN与博客网站jirath.cn <Java基础复习>-常识与入门 一.Java语言的知识体系图 分为三部分 编程语言核心结构:变量.基本语法.分支.循环.数组 Java面向对象的核心逻辑:OOP(面向对象编程).封装.继承.多态.接口...... JavaSE高级应用程序:异常.集合.线程.IO.反射.网络 二.常识与概述 计算机能直接识别的是机器指令,机器指令的封装是汇编语言,汇编语言再向上是高级语言如C,C++,Java…
你现在是不是想学Java,但很迷茫不知该从何下手,那么请认真看完这篇文章,希望对你有所帮助! 作为零基础刚刚接触Java的朋友们来说,我的建议还是先看视频,虽然有很多人说看视频学习慢,建议直接买优秀的书籍!但其实对于零基础,没有接触过Java的小白来说,直接看书大多是看不懂的,肯定需要搭配讲解.练习同时进行,这个时候书籍的力量就稍显薄弱,可以考虑直接找一套视频跟着看,从头看到尾,现在有很多免费的教学视频非常完整,从基础讲起,循序渐进,每讲一个知识点都会有相对应的项目搭配练习,更方便掌握枯燥的知识…
JavaSE学习笔记(9)---集合类和泛型 1.Collection集合 集合概述 在前面我们已经学习过并使用过集合ArrayList<E> ,那么集合到底是什么呢? 集合:集合是java中提供的一种容器,可以用来存储多个数据. 集合和数组既然都是容器,它们有什么区别呢? 数组的长度是固定的.集合的长度是可变的. 数组中存储的是同一类型的元素,可以存储基本数据类型值.集合存储的都是对象.而且对象的类型可以不一致.在开发中一般当对象多的时候,使用集合进行存储. 集合框架 JAVASE提供了满足…
一.数组与集合的区别 数组和集合都是用来存储对象的容器,但是,数组只能储存基本数据类型的对象,且长度不可变:而集合是储存引用数据类型的对象,且长度可变,所以,在不知对象数量的具体数值时一般用集合来存储. 二.javaSE阶段下的层次图 从层次图可以来看,集合类是以接口来实现的,其中<E>和<K,V>为泛型,简单来说,泛型就是所引用的对象类型,集合主要分为单列集合和双列集合,Iterator迭代器只是集合的运用,从而实现了Iterator接口,用于遍历集合中元素的接口,主要运用无序集…
JavaSE基础:集合类 简单认识类集 我们学习的是面向对象语言,而面向对象语言对事物的描述是通过对象体现的,为了方便对多个对象进行操作,我们就必须把这多个对象进行存储. 而要向存储多个对象,就不能是一个基本的变量,而应该是一个容器类型的变量,在我们目前所学过的知识里,有哪些是容器类呢? 数组和StringBuffer,但是呢?StringBuffer的结果是一个字符串,不一定满足我们的要求,这就是对象数组. 而对象数组又不能适应变化的需求,因为数组的长度固定的,这个时候,为了适应变化的需求,J…
首先我们自定义Person类,只有姓名和年龄两个属性 class Person{ private String name ; private int age ; public Person(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name…
文章目录 一.自动排序功能测试 二.对自定义类的自动排序 一.自动排序功能测试 public class TreeSetDemo { public static void main(String args[]) { TreeSet<Integer> myTreeSet = new TreeSet<>(); myTreeSet.add(9) ; myTreeSet.add(6) ; myTreeSet.add(8) ; myTreeSet.add(7) ; System.out.pr…
个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.关键字 abstract 1.1.abstract可以修饰:类,方法 1.2.abstract修饰方法 : 抽像方法没方法体 非抽像类继承抽像类 必须重写抽像类中的所有抽像方法(包括间接抽像父类)父类如果重写了间接抽像父类中的抽像方法,那么非抽像子类可以不用再重写该方法 如果非抽像子类不想抽写抽像类中的抽像方法 ①那么该类只能也被声明成抽像类 ②父类全部重写抽像方法 abstract修饰类: 抽像…
第一部分,JAVA基础和面向对象 part01 入门与开发环境搭建 1: 计算机基础知识(了解)(1)计算机(2)计算机硬件(3)计算机软件系统软件:windows,linux,mac应用软件:QQ,YY,扫雷,CS/F(4)软件开发就是用开发工具和计算机语言做出软件(5)计算机语言人与计算机的交流方式(6)人机交互A:图像界面方便,简单,直观.B:DOS 窗口方式要有控制台, 要记住很多的命令, 麻烦.(7)键盘功能键和快捷键的介绍(掌握)A:键盘功能键tabshiftctrlalt空格ent…