干货!Java思维导图和Java技术栈
bigegpt 2024-09-24 07:21 3 浏览
学习方法:
- 针对性
- 引导式
- 对比式
- 总结式
图片说明
图片说明
图片说明
图片说明
图片说明
图片说明
Java简介: 简单性,面向对象,分布式,健壮性,安全性,平台独立与可移植性,多线程,多态性等.
Java三大体系:JavaSE,JavaEE,JavaME
平台标准版,平台企业版,微型版.
Java开发环境配置:下载jdk,配置环境变量,JAVA_HOME设置,安装java开发工具,CLASSPATH设置,PATH设置..
java基础语法:
对象,是类的一个实例,有行为和状态
类,是模板,用来描述一个类对象的行为和状态
方法,是行为
实例变量,是每个对象都有一些独特的实例变量,对象的状态由这些实例变量的值决定
基础语法:
在Java中大小写敏感,就是说Hello和hello是不一样的额.
类名,类名的首字母应该是大写
方法名,所有方法名都应该是以小写字母开头
源文件名,源文件名必须和类名相同
主方法入口,所有程序通过publlic static void main(String []args)方法执行
标识符:类名,变量名以及方法名都被称为标识符
标识符以字母,美元符号,或下划线
关键字不能用作标识符
标识符是大小写敏感的
修饰符分为访问控制修饰符和非访问控制修饰符
一,访问,default public protected private
二,非访问,final abstract strictfp
变量:
局部变量, 类变量(静态变量), 成员变量(非静态变量)
数组,
数组是存储在堆上的对象,可以保持多个同类型的变量
枚举概念为,
枚举限制变量只能是预先设定好的值,枚举是可以用于单独声明或者声明在类里面,方法,变量,构造函数也可以在枚举中定义.
在java中有大概50多个保留字吧,关键字是不能用于常量变量,和任何标识符的名称.
继承是在java中,一个类可以由其他类派生的,被继承的类为超类,派生的类为子类,利用了继承的方法,可以重用已经存在类的方法和属性
接口,
是作为对象间相互通信的协议,接口是定义要用到的方法,方法的实现要在派生类
学习java很多吧,有:
- 面向对象
- 多态
- 继承
- 封装
- 抽象
- 重载
- 方法
- 实例
- 对象
- 类
面向对象:
类是描述对象的行为和状态
对象是类的一个实例,有行为和状态
构造方法,新建对象时,执行的一个特殊方法,创建一个对象的时候,至少要调用一个构造方法,构造方法的名称要和类同名,一个类可以有多个构造方法.
this是用来引用当前对象,构造方法之间的调用.
方法的重载是同名不同参.
final是用来修饰方法,变量,和类的,是最终不可以变的.
static静态, 静态变量是类, 又叫类变量, 非静态成员属于实例, 静态成员是通过类名直接调用, 而被static修饰的成员将最优先加载到内存里.
接口, interface替代class , implements替代extends
接口中只能定义,公共的常量,抽象方法,内部类,内部接口.
说到抽象类,
抽象类的作用是为子类提供通用代码,抽象类不能创建对象,在抽象类中,不一定有抽象方法,但是有抽象方法的类,一定是抽象类.
说到内部类,
内部类是定义在类的内部,方法的内部或者是局部代码中的类,就是叫内部类.
内部类:
静态内部类, 非静态内部类, 局部内部类, 成员内部类, 匿名内部类.
面向对象的三大特性
- 继承
- 多态
- 封装
继承的作用是代码重复使用,单继承,一个类只能有一个父类,一个类,可以有多个子类.在java中构造方法不继承,静态成员不继承,没有访问权限的成员不继承.
多态,继承是多态的基础,没有基础就没有多态,继承属于多态的一种,子类重写父类的方法,父类引用变量指向子类对象.
子类转父类,将一个父类的引用指向一个子类的对象,称为向上转型,自动类型转换.
封装,封装的好处是用来隐藏类的实现,修改属性的可见性来限制属性的访问.
Java中的程序
声明对象,有对象名称和对象类型,使用关键字new来创建对象,初始化对象,如Person person = new Person("dashu"),通过创建对象进行访问成员变量和方法,声明和实例化对象,访问其中的变量和方法.
在java中,一个源文件只能有一个public类,可以有多个非public类,源文件的名称和类名要一样.java包,包是用来对类和接口进行分类的.
数据类型
八种基本类型,
六种数字类型,四种是整数型,两种是浮点型, 另外的是字符类型, 还有布尔型.
类型: byte,short,int,long, float,double, boolean,char
引用数据类型,在java中有对象和数组都是引用数据类型,所有引用类型的默认值为null.
基本数据类型
自动类型转换,低到高,byte,short,char->int->long->float->double.
强制类型转换,高到底.
转换:\n换行,\r回车,\b退格,\s空格等.
修饰符
修饰符是定义类,方法或是变量,java中支持4种不同的访问权限,public可以用于当前类,同一包内,子孙类,其他包,protected可以用于当前类,同一包内,和子孙类,default可以用于当前类,同一包类,private只能用于当前类.
如果父类中声明public的方法在子类中也必须是public,如果父类中protected的方法在子类中声明为protected,也可以为public,不能为private.声明为private的方法,不能被继承.
非访问,static修饰符,可以用来创建类方法和类变量.final修饰符是用来修饰类,方法,变量.final修饰的类不能被修饰,修饰的方法不能被继承类重新定义.修饰的变量为常量是不可以被修改的.abstract用于创建抽象类和方法.synchronized和volatile用于线程.
运算符要点
i++是运算完加1,++1先加1,后运算.
运算符:
&都是1,结果为1,否则为0;
|都是0,结果为0,否则为1;
^相同的,结果为0,否则为1;
~按位补运算符翻转操作数的每一位,即0变成1,1变成了0.
循环结构
// do...while循环和while循环相似,但是do...while循环至少会执行一次 while(){ } do{ }while(); for(初始化;布尔表达式;更新){ } for(声明语句;表达式){ } if语句 if...else语句 if...else if...else语句 switch语句 switch语句中的变量类型为: byte, short, int, char
封装,拆箱,抽象类,Math类,String类
StringBuffer和StringBuilder StringBuffer的方法是线程安全的 StringBuilder相比较StringBuffer有优势 Integer x = 2; x = x + 2; 抽象类Number Integer,Long,Byte,Double,Float,Short Math类 xxxValue(),valueOf(),parseInt(),abs(),random() int compareTo() 进行比较两个字符串 String concat() 将字符串连接到此字符串的结尾 boolean equals() 将字符串与指定的对象比较 int length() String[] split() byte[] getBytes() int hashCode() int indexOf() String substring() String trim()
数组
声明数组变量,创建数组,多维数组
arr[] arr = {1,3,4,5,6,7,13}; for(int array : arr){ }
时间
Date和SimpleDateFormat
String toString() long getTime() int compareTo() boolean before() boolean after() Date datenow = new Date(); SimpleDateFormat ft = new SimpleDateFormat("yyyy.MM.dd hh:mm:ss"); System.out.println(ft.format(datenow));
流,文件,io
图片说明
FileReader->InputStreamReader FileWriter->OutputStreamReader
// 创建目录 mkdir()创建一个文件夹 mkdirs() // 读取目录 isDirectory()判断是否是目录 list()列表文件 delete()方法
异常处理
Throwable->Error Throwable->Exception try/catch throws/throw finally
集合框架
接口 Collection Map List 为采用线性列表的存储方式,长度可动态改变 Map 为键-值对的存储方式,长度可动态改变 具体类 List Map List -> ArrayList LinkedList Map -> HashMap 算法 Collections 提供了对集合实现遍历等 Collection接口是最基本的容器接口 List接口 Set接口 List -> LinkedList -> 底层数据结构为链表结构,查询慢,增删快 ArrayList -> 底层数据结构是数组结构,查询快,增删慢,线程不同步 Vector 底层是数组数据结构,线程同步,增删改查都慢的 Set -> 不允许放入重复的元素,最多只能保护一个null HashSet类,底层基于HashMap,不保证Set的迭代顺序和永久不变 Map HashMap TreeMap
泛型
public class Test<T>() Test<Object> t = new Test<Object>(); 泛型类: public class Box<T>{ private T t; public void add(T t){ this.t = t; } public T get() { return t; } }
类型通配符:值使用?代替具体的类型参数
多线程
多线程就是多个线程进行?,
线程为一种轻量级的进行,进程具有独立性,动态性,并发性,进程的独立性在于拥有独立资源,独立的地址,无授权其他进程无法访问.多线程代表性,继承Thread和实现Runnable接口.
线程建立,new一个Thread,然后就绪执行start方法,开始运行,执行run方法,然后阻塞,接着死亡.run方法进行结束,调用stop方法.
开始学习框架:
要掌握框架的目的,背景,优势,功能,特点,看书,框架原理,做一些demo等.
项目
项目,要是什么,要掌握什么,框架用法,功能一般有前台和后台.需要掌握的是前端和后端.这个项目的结果,设计思想,有什么是我们要学习的,遇到的一些问题去如何实现.
学习
javase基础,掌握语法基础,io流,多线程,反射,sql继承,增删改查,和学习表关联查询,前端学习,html``css,jsp学习,框架学习spring,springmvc,springBoot,mybatis等.
- 上一篇:Java教程Java 文件 IO 操作
- 下一篇:IO流File类的使用
相关推荐
- 5分钟调色大片的方法(5分钟调色大片的方法有哪些)
-
哈喽大家好。在大家印象中一定觉得ps非常难学非常难。大家不要着急,小编的教学都是针对ps零基础的同学的,而且非常实用哦。只要大家跟着图文练习一两遍,保证大家立马学会~!好了,废话少说,下面开始我们今天...
- 闪白特效原来是这么用的(闪白特效怎么使用)
-
作者|高艳侠订阅|010-86092062闪白特效是影视作品中应用比较多的效果之一,那么具体该在哪些场景使用闪白特效?具体该如何操作?下面就以AdobePremiere(以下简称PR)为例,...
- ppt常用小图标去哪里找?3个矢量素材网站推荐!
-
ppt是一个注重可视化表达的演示载体,除了高清图片,ppt中另一类常用的素材是各种小图标,也叫矢量图标,巧妙运用小图标能提升整体美观度和表现力,那么ppt常用小图标去哪里找呢?为方便各位快速找到合适的...
- 有什么好用的截图录屏工具?试试这9款
-
经常有朋友反馈苦于缺乏截屏和录屏的趁手工具,本期我们分享几个相当好用的截屏和录屏工具,希望能帮到大家。ScreenToGifScreenToGif是一款免费且开源的录屏工具。此款工具最大的特点是可以...
- 配色苦手福音!专业快速色环配色PS插件
-
今天橘子老师给的大家介绍的是一款快速配色的插件,非常强大配色苦手福音来啦!(获取方式见文末)【插件介绍】配色在后期设计中占有主导地位,好的配色能让作品更加抢眼Coolorus这款专业的配色插件,能够...
- 如何用PS抠主体?(ps怎么抠主体)
-
1.主体法抠图-抠花苞和花梗导入一张荷花苞的照片,点击上图中顶部“选择”菜单栏,下拉单击“主体”。可以看到,只有花苞被选中,但是花梗并没有被选中。接下来单击上图中左侧工具栏的“快速选择工具”,上图中顶...
- 2799元的4K电视,有保障吗?(买4k电视机哪个品牌好)
-
在上一期《电脑报》的3·15专题报道中,我们揭露了一款不靠谱的42英寸4K智能电视——TCLD42A561U。这款售价2699元的4K智能电视不仅4K画质方面存在严重问题,而且各种功能和应用体验也不理...
- 苹果电脑的Touch Bar推出一段时间了 这款工具可以帮你开发适用于它的APP
-
距离苹果推出带有TouchBar的MacBookPro已经有一段时间了,除了那些像Adobe、Google和Microsoft大公司在开发适用于TouchBar的应用之外,其实还有很多独立的开...
- 如魔法般吸取颜色的桌灯(如魔法般吸取颜色的桌灯叫什么)
-
色彩为生活带来的感官刺激,逐渐被视为理所当然。一盏桌灯运用它的神奇力量,将隐藏于物件中的颜色逐一释放,成为装点环境的空间魔法师。ColorUp是一款可以改变颜色的吸色台灯,沿用传统灯泡的造型,融入了拾...
- 一篇文章带你用jquery mobile设计颜色拾取器
-
【一、项目背景】现实生活中,我们经常会遇到配色的问题,这个时候去百度一下RGB表。而RGB表只提供相对于的颜色的RGB值而没有可以验证的模块。我们可以通过jquerymobile去设计颜色的拾取器...
- ps拾色器快捷键是什么?(ps2019拾色器快捷键)
-
ps拾色器快捷键是什么?文章末尾有获取方式,按照以下步骤就能自动获得!学会制作PS特效需要一定程度的耐心和毅力。初学者可以从基本的工具和技术开始学习,逐渐提高他们的技能水平。同时,观看更多优秀的特效作...
- 免费开源的 Windows 截图录屏工具,支持 OCR 识别和滚动截图等
-
功能很强大、安装很小巧的免费截图、录屏工具,提供很多使用的工具来帮我么能解决问题,推荐给大家。关于ShareXShareX是一款免费的windows工具,起初是一个小巧的截图工具,经过多年的迭...
- 入门到精通系列PS教程:第13篇 · 拾色器、颜色问题说明及补充
-
入门到精通系列PS教程:第13篇·拾色器、颜色问题说明及补充作者|侯潇问题说明我的第12篇教程里,有个小问题没有说清楚。要说是错误,又不算是错误,只是没有说准确。写完那篇教程后,因为已经到了深...
- PS冷知识:用吸管工具吸取屏幕上的任意颜色
-
今天,我们给大家介绍PS中的一个冷知识:用吸管工具可以吸取屏幕上的任意颜色。其实,操作起来是非常简单的。大多数情况下,我们认为,PS的吸管工具只能吸取PS软件作图区域范围内的颜色,最多加上画布四周的...
- Windows 11 将提供内置颜色选择器工具
-
Windows11内置了颜色选择器,可以扫描并识别屏幕上的颜色并生成颜色代码。此外,微软还利用人工智能技术,让屏幕上的文本扫描和选择变得更加便捷。这两项功能均已在SnippingToolv1...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- xcode-select (66)
- mysql授权 (74)
- 下载测试 (70)
- linuxlink (65)
- pythonwget (67)
- androidinclude (65)
- libcrypto.so (74)
- linux安装minio (74)
- ubuntuunzip (67)
- vscode使用技巧 (83)
- secure-file-priv (67)
- vue阻止冒泡 (67)
- jquery跨域 (68)
- php写入文件 (73)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)