
java 基础
文章平均质量分 76
java 基础知识梳理
灯塔@kuaidao
giao~ ,一起奥力给!
展开
-
Java类型Api初探
kotlin语言中大量使用泛型相关语法,对于比较抽象的类和函数如果认识仅仅停留在java 实体上,就不能很好的学习kotlin语法的精髓。协程以及compose中泛型相关api比比皆是。不理解java 类型,就不能学好kotlin和composeJava中的Type类型详解入............原创 2022-07-13 18:11:17 · 552 阅读 · 0 评论 -
Java字节码基础
前言最近计划熟悉下jectpack api,很多java基础知识没有好好掌握。对于一些新技术中涉及到底层知识抓耳挠腮不知所以然。虽然不能一股脑的掌握所有知识。但是遇到不了解的地方做好笔记也能逐渐的提高自己专业知识字节码 .class 文件包含高级语言编译后输出的所有jvm虚拟机可以识别的元数据信息。了解字节码之前需要了解下 Hotspot 虚拟机栈和栈帧字节码基础:相关blog该篇blog的引子:类、接口、函数在学习kotlin相关文档时, inline 标识官方介绍说会将相关内联函数在java原创 2022-05-22 19:59:40 · 181 阅读 · 0 评论 -
类、接口、函数
前言各种专业技术名词不断增加,学好编程首先要了解技术术语,然后才可以对技术行业整体有一个大概判断。学习中对某个知识点经常使用但是看官方文档时还是很容易混淆,专业术语与自己已经掌握的知识对应关系。blog在于罗列 java 和 kotlin ,类、接口、函数 种类。函数Lambda 是一个对象。Lambda 表达式是一个函数接口对象lambda表达式 :block:String.()->Unitkotlin inline 关键字每次调用高阶函数,会创建一个匿名内部类。 函数设置成Inl原创 2022-05-22 11:16:57 · 220 阅读 · 0 评论 -
Android jar 脚本自动化实践,可视化java swing工具
日常开发过程中将一些频繁操作进行自动化脚本处理,可以做到事半功倍。把时间花费到重要的事情上面。最近进行项目自动化处理,写了一个java swing的工具,开发过程中遇到的问题记录如下。首先介绍下如何将java程序打成可执行的jar方式1 eclipse ide方式2 IntelliJ ide早期用eclipse进行可执行jar打包,最近使用intelJ 打包。这里介绍intelJ...原创 2020-04-20 17:36:37 · 794 阅读 · 0 评论 -
Java 9 中的 9 个特性 详细
前言 java 8 发布三年多之后,即将快到2017年7月下一个版本发布的日期了。 你可能已经听说过 Java 9 的模块系统,但是这个新版本还有许多其它的更新。 这里有九个令人兴奋的新功能将与 Java 9 一起发布。 java8 还没尝到鲜,9就要来了,准备好了没???1. Java 平台级模块系统Java 9 的定义功能是一套全新的模块系统。当代码库越来越大,创建复杂,盘根错节的“意大利面原创 2017-07-22 11:56:52 · 360 阅读 · 0 评论 -
Java 四种引用类型完全解析
强引用,软引用,弱引用,虚弱引用四种引用类型来方便来管理对象的生命周期。原创 2018-02-02 11:45:23 · 1777 阅读 · 1 评论 -
Java虚拟机的堆、栈、堆栈 如何理解
前言开发过程中,每次用到静态成员,或者静态方法,就会很仔细,生怕用不好造成bug,归其原因就是对jvm了解甚少,那些在堆中存储,是线程间共享的,那些在栈中存储属于线程私有的。借用此文章进行回顾,堆栈作用堆是堆(heap),栈是栈(stack),堆栈是栈。“堆栈”这种叫法,容易让新人掉坑里。JVM规范让每个Java线程拥有自己的独立的JVM栈,也就是Java方法的调用栈。Chapte原创 2018-01-19 15:13:37 · 2807 阅读 · 0 评论 -
Javascript 总结(常用工具类的封装)
type 类型判断isString (o) { //是否字符串 return Object.prototype.toString.call(o).slice(8, -1) === 'String'}isNumber (o) { //是否数字 return Object.prototype.toString.call(o).slice(8, -1) === 'Numbe...转载 2018-07-31 11:06:27 · 273 阅读 · 0 评论 -
Java 中 13个 原子操作类
前言java 从jdk 1.5 开始提供了 java.util.concurrent.atomic包,这个包中原子操作类提供了一种用法简单,性能高效,线程安全地更新一个变量的方式。因为变量有很多种,所以在automic包中提供了13类,属于4种类型的原子更新方式“原子更新基本类型原子更新数组原子更新引用原子更新属性(字段)1.原子更新基本类型类 Atomic...原创 2018-08-24 18:22:17 · 307 阅读 · 0 评论 -
数据结构:八大数据结构分类
数据结构分类数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成 。常用的数据结构有:数组,栈,队列,链表,树,散列表,堆,图等,如图所示每一种数据结构都有着独特的数据存储方式,下面为大家介绍它们的结构和优缺点1、数组数组是可以再内存中连续存储多个元素的结构,在内存中的分配也是连续的,数组中的元素通过数组下标进行访问,数组下标从0开始。例如下面这段代...原创 2019-01-16 14:52:36 · 881 阅读 · 1 评论 -
Java 内存模型与线程
1.概述2.硬件的效率与一致性计算机cpu进行计算必定会关联到内存的读写操作,实际情况是计算机存储设备与处理器的运算速度有几个数量级的差距,现代计算机不得不加入一层读写速度与处理器接近的高速缓存来作为内存与处理器之间的缓冲。引入高速缓存区带来了一些数据同步方面的复杂度。如何保证多核cpu之间缓存的一致性问题,引出了一些缓存一致性的规则即一致性协议。(MSI、MESI、MOSI Synapse...原创 2019-01-22 10:53:44 · 208 阅读 · 0 评论 -
Java基础 线程池简析
前言多线程编程是一个难点,好多面试官都会问。虽然平时用到多线程编程的地方比较少,掌握基本的用法事半功倍。合理使用多线程的好处1.降低资源消耗2.提高响应速度3.提高线程的可管理性频繁的创建的Thread 类比较消耗系统资源,比较好的做法就是使用线程池来管理线程。线程池的实现原理当向线程池提交一个任务之后,线程池是如何处理这个任务的呢?1.判断核心线程池是否已满,未满则创建新线...原创 2019-02-19 16:53:17 · 293 阅读 · 0 评论 -
Java 泛型通配符解释
前言 最近看Rxjava retrofit 中到处都是泛型类型定义,不得不重新整理一下资料,简单介绍,满足基本理解使用。定义什么是泛型?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的原创 2017-04-06 16:45:45 · 1661 阅读 · 3 评论 -
Android Data Binding Library
前言本文介绍了如何使用数据绑定库写声明布局和减少绑定应用程序逻辑和布局所需的代码,在官方介绍基础上加上理解整理而成。准备新建一个 Project,确保 Android 的 Gradle 插件版本不低于 1.5.0-alpha1:classpath ‘com.android.tools.build:gradle:1.5.0’ 然后修改对应模块(Module)的 build.gradle:dataBin原创 2017-04-18 17:31:43 · 579 阅读 · 0 评论 -
微博,qq第三方登陆 绑定--注意点
需求; 1.最近公司使用三方登陆,分享。接触到qq,微信,微博等三方机构的借口sdk 2. 之前做了一段时间,没有进行总结。做这个功能的时候,折腾的不行,没有之前的任何经验,导致做的时候,手脚放不开,心里没底 3.这篇文章是解决问题后的心得,也是对自己工作的肯定。 1.先说qq登陆方面的, 1,首先得到qq互联上面,注册,简历appilcation 或得a原创 2015-02-09 21:23:09 · 2231 阅读 · 0 评论 -
@1x,@2x,@3x 资源文件自动分包工具-android 篇
前沿:现在开发中ios,android会使用一套图,但是ui设计师给的图命名是以@1x,@2x,@3x这样命名的,android 客户端使用起来就略嫌麻烦了,这个小工具可以实现简单的分包。原理:I/o流读取 testPicture中的@1x,@2x,@3x 文件进行整理,按序输出旧文件文字同时,需要输入一个新文件名 + 后缀名,然后动态进行分组到desPicture中的文件夹1,文件夹2,文件夹3。原创 2017-01-17 11:32:52 · 3297 阅读 · 1 评论 -
Http 和Https 简单分析
1.https 数据传递如何进行加密传递,如何解密。 2.http 三次握手,客户服务端在握手过程中进行那些交流 3.Https 如何进行配置 4.公钥/私钥/密钥/数字签名转入正题:一 OSI七层模型OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型 ,是一个逻辑上的定义,一个规范,它把网络从逻辑上分为了7层。每一层都有相关、原创 2016-06-05 16:28:05 · 681 阅读 · 0 评论 -
java网络编程 tcp 黑马程序员学习笔记(11)
import java.io.*;import java.net.*;//步奏//建立socket对象public class tcpclient {public static void main(String args[]) throws Exception{ //创建客户端的socket服务,指定母的主机和端口 Socket s=new Socket("原创 2014-01-08 17:38:30 · 690 阅读 · 0 评论 -
java 交通灯 黑马程序员学习笔记(10)
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ---------------------- 总结交通灯管理系统 通过上图可以看出,每个路口的车到十字路口有三个选择:笔直向前、右拐弯、左拐弯,那么总共有3*4=12条路线。分别是:E(east)、W(west)、S(south)、N(north)。原创 2014-01-20 19:57:07 · 771 阅读 · 0 评论 -
java 动态代理 黑马程序员学习笔记(8)
----------------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------动态代理总结!!!1. 动态代理解释:2. JAVA的动态代理 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理 消息、过滤消息、把消息转发给委托类,原创 2014-01-20 19:50:04 · 723 阅读 · 0 评论 -
java web 项目实现 耦合-解耦 解决方案----工厂模式入门级别
1.主要思想就是使用工厂设计模式,将service层和dao层进行解耦 控制反转就是(inversion of control)将控制权交个自定的一个工厂来实现,我们要做的就是,通过自定义beanfactory 得到需要的serviceiml 和 daoiml对应的类说白了,不用serviceiml依赖dao层 这里使用ServletContextListener 监听器来原创 2014-04-03 22:33:19 · 3612 阅读 · 0 评论 -
java api 视频面试准备
Java api知识点总结1.单例设计模式:通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问懒汉式:先对对象进行初始化恶汉式(延时加载用到的是恶汉式):先在堆内存中建立引用对象,但是不指向任何的引用地址,当使用new是才将引用的地址给引用对象 2.包 (package) ,类与类,类与接口,接口与接口,抽象类与类,类与对象的异同?包:为了原创 2014-02-17 16:01:31 · 1677 阅读 · 0 评论 -
JAVA集合框架 黑马程序员学习笔记(11)
----------------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------JAVA集合框架http://blog.youkuaiyun.com/mmovve/article/details/18177649http://blog.youkuaiyun.com/mmovve/article/det原创 2014-01-22 11:03:12 · 749 阅读 · 0 评论 -
企业级项目防止文件夹同问题解决方案
处理文件同名问题: 方案一 * 文件名+uuid * 进行分目录操作 [16:37] 文件上传目录分层------------ 黑马程序员---------安卓 1今天上课,老师给我们讲解的知识扩展,说企业级OA系统,部署到企业一年后,发送邮件附件功能,不可以发送附加了。最后排错是因为,同一个文件夹中,子文件夹原创 2014-03-31 00:15:37 · 1636 阅读 · 0 评论 -
ThreadLocal 和 synchornized 两者的区别
package com.itheima.hello.runnable;import java.util.Random;public class ThreadDemo1 implements Runnable { private int count = 0; Student student = new Student(); private Object原创 2014-07-02 20:22:56 · 1595 阅读 · 0 评论 -
用户账号自动登录--解决方案
案例1:账号自动登录: 1.思想 使用Filter、cookie、session 步骤: 首先建立基本的登录逻辑,就是连接上数据库可以进行简单的登录; 项目架构: com.itheima.daoimp |--UserDaoimp com.itheima.domain |--User原创 2014-03-31 17:21:20 · 1805 阅读 · 0 评论 -
java 内存回收机制
在Java中,它的内存管理包括两方面:内存分配(创建Java对象的时候)和内存回收,这两方面工作都是由JVM自动完成的,降低了Java程序员的学习难度,避免了像C/C++直接操作内存的危险。但是,也正因为内存管理完全由JVM负责,所以也使Java很多程序员不再关心内存分配,导致很多程序低效,耗内存。因此就有了Java程序员到最后应该去了解JVM,才能写出更高效,充分利用有限的内存的程序。1.Java转载 2016-02-25 16:10:44 · 490 阅读 · 0 评论