第一部分 Java:面向对象理解

Java:面向对象理解、集合、IO、NIO、并发、反射源码分析
一.面向对象
1.创建对象的5种方式

   (1)使用new关键字(2)使用Class类的newInstance方法(3)使用构造函数类的newInstance方法(4)使用clone方法 --》未实现Cloneable会报错(5)使用反序列化5动态代理

2.this、super的用法
它们都是用来调用构造器,有什么区别呢?

  (1)thisthis.属性名;当局部变量与成员变量名称相同时,使用this关键字代表成员变量如果局部变量和成员变量名称不同,this可以省略this.方法名();本类中可以省略thisthis();this("小花",2);调用本类的构造函数,首行、只能用一个(2)supersuper.属性名;当父类和子类有相同的同名成员变量时,调用父类中的普通中的属性super.方法名(); ❌调用父类的成员方法super();super("小花",2);调用父类的构造方法,首行、只能用一个

3.static、final的用法 JVM内存模型

  (1)static[1]属性   --静态变量/类变量≠成员变量[2]方法       --静态方法/类方法(no Constructor)[3]代码块    --静态代码块[4]内部类    --静态内部类(2)final[1]修饰类      --不能被继承[2]修饰方法     --不能被重写[3]修饰变量     --值不能修改,常量

4.abstract、interface的用法
接口、抽象类的区别,普通方法、抽象方法的区别

5.extends、implements的用法
继承、实现的区别

.@Override方法的重载、方法重写的区别继承:当我们想要一个模板,实现多种对象,把代码提取出来放到一个单独的类中  --这个存放的类叫作父类父类(超类,基类):     被继承者子类(派生类) :                 继承者语法:public class 子类名 extends 父类名{}注意事项:1、一个类只能直接继承一个类,但是可以间接继承其他类2、一个类如果没有明确extends另一个类,那么默认继承Object类:一个类,是所有类的超类范围:子类可以继承父类的所有数据,包括私有数据,但是要间接访问,构造函数不能继承好处:省代码方法重写:如果子类和父类方法名完全相同,子类的这个方法就叫做方法的重写重写需要注意的地方:1、构成重写的条件: 方法的返回值,方法名,参数列表要完全相同,修饰符的范围不能小于父类   2、私有的方法和构造函数不能被重写3、静态方法不存在重写的概念,但是可以被继承

6.向上转型、向下转型

7.静态代码块、构造代码块、同步代码块

8.静态内部类、匿名内部类

9.面向对象的理解

10.类变量、实例变量、全局变量、局部变量的区别

 类变量:独立于方法之外的变量,用static修饰实例变量/全局变量:独立于方法之外的变量,不过没有static修饰局部变量:类的方法中的变量

11.各种数据类型的显示转换、隐式转换

     Object是所有引用类型的父类  包装类型都是Number的子类java.lang.包装类byte      Byteshort Shortint       Integerlong      Longfloat Floatdouble    Doublechar      Characterboolean   Boolean整型常量池的长度是固定的,   byte

11.交换两个对象的数值

二.集合
1.HashMap源码分析
Java中基本数据结果 –》数组、指针(引用)

    (1)影响性能 --》初始容量、加载因子容量:哈希表中的桶的容量,初始容量:哈希表创建时的容量,加载因子:哈希表扩容之前能达到的容量百分比(2)寻址方式key-计算方式-hashcode-数组长度取模 位移运算

更新中…

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/413658.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[css] width属性的min-content和max-content有什么作用

[css] width属性的min-content和max-content有什么作用 max-content 在一个父元素上设置该元素后,元素的宽度会以子元素内最长的一个为准,子元素表现得会好像设置了white-space:nowrap一样一行展示min-content 在一个父元素上设置该元素后,子…

js拖拽

function drag(cla1,cla2,index){//鼠标可拖拽区域的dom,被拖拽的dom元素,索引var disX 0; //鼠标到dom元素左边距离var disY 0; //鼠标到dom元素上边距离var oDiv1 document.getElementsByClassName(cla1)[index];var oDiv2 document.getElementsByClassName(c…

[css] 你用过outline属性吗?它有什么运用场景

[css] 你用过outline属性吗?它有什么运用场景 outline (轮廓)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。个人简介 我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易&#x…

Centos7搭建Java环境,并设置项目自启动脚本、定时数据库备份/日志清理脚本

开发环境下载,提供nginx-1.12.2、jdk-8u162、Jenkins下载 建个文件夹,作为开发环境存放路径 cd /usr mkdir developmentEnvironment cd /一.java 1.解压包 tar -zxvf jdk-8u162-linux-x64.tar.gz -C /usr/developmentEnvironment2.配置环境变量 vi…

【nodejs】让nodejs像后端mvc框架(asp.net mvc)一样处理请求--参数自动映射篇(6/8)...

文章目录 前情概要 路由、action的扫描、发现、注册搞定之后,后来我发现在我们的action里面获取参数往往都是通过request对象来一个一个获取。同样的一行代码我们不厌其烦的重复写了无数次。遂想着那我们能不能像后端程序一样做得更自动化一些呢? 所以&a…

Java String常用的数据类型转换

工作写代码经常遇到string的数据类型转换,每次都去搜索如何转换很不方便。写篇博客做个总结,以后看这篇就好了。 1.string-bigDecimal 2.string-date Testpublic void StringToDate() throws ParseException {Date date new SimpleDateFormat("yy…

深度学习之Batch Normalization

1、Batch Normalization的引入 在机器学习领域有个很重要的假设:IID独立同分布假设,也就是假设训练数据和测试数据是满足相同分布的,这是通过训练数据获得的模型能够在测试集上获得好的效果的一个基本保障。在深度学习网络中,后一…

[css] 为什么说css的选择器一般不要超过三级?

[css] 为什么说css的选择器一般不要超过三级? CSS的解析过程,在解析选择器的时候,是从右向左,从上到下及逆行解析的。 超过三级会使的css解析树复杂度呈指数级增加,降低css加载性能个人简介 我是歌谣,欢迎…

调用支付宝接口 alipay.data.bill.accountlog.query,提示:ISV权限不足

使用环境:正式环境 接口名称:alipay.data.bill.accountlog.query(支付宝商家账户账务明细查询) 提示:ISV权限不足,建议在开发者中心检查签约是否已经生效 参考: 支付宝商家账户账务明细查询接口文档 自己按照支付宝官…

工作309:uni-获取vuex里面的值

marketId:this.vuex_user.market_id

vue给同一元素绑定单击click和双击事件dblclick,执行不同逻辑

在做项目过程中,需求是点击孔位单击弹出对话框查看产品总数,双击弹出对话框查看详情。一开始直接click和dblclick写在标签里面,但是不管怎么样,总是执行单击事件 解决办法:利用计时器,在大概时间模拟双击事…

CentOS7 1.搭建环境脚本

公司没有专职运维,搭建服务器全部都是程序员操作。以前手动搭建需要1天时间,搭建过程很慢、很无聊,于是自己总结了如下脚本,执行完需要18分钟,以后再也不用苦逼的搭建环境了。 build.sh #!/bin/bashecho "新建de…

工作310:uni-初始获取数据onload

/* 第一步定义onload方法 */onLoad(){/* 调用市场信息的接口 分别 vuex获取 其他三项 */this.$u.api.getpartyList({marketId:this.vuex_user.market_id,type:"通知公告",pageNo:1,pageSize :20}).then(res>{if(res.data.code200){this.tableDatares.data.data.re…

LeetCode 258 Add Digits

leetcode 上做了一题比较有意思,记录一下,传送门:https://leetcode.com/problems/add-digits/description/ 题目意思是:给一个正整数a,让其个位,十位,百位一直到最高位加起来得到另一个数字b&am…

工作311:uni-携带当前参数跳转页面传值

第一步 <view v-for"(item,index) in tableData" click"getDetail(item.id)" class" box"><view class"u-line-1 u-m-b-24 u-font-30 color-3">{{item.title}}&#xff01;</view><view class"u-flex u-ro…

web自动化测试(java)---测试过程中遇到的错误合集

摸索测试&#xff0c;不管是安装、调测第一个用例都会遇到各种各样的问题&#xff0c;或是自己的问题或是程序本身设置问题 只有把所有问题记录下来&#xff0c;才对得起自己的经历 1、设置firefox的执行文件错误 Exception in thread "main" org.openqa.selenium.We…

CentOS7 3.项目持续交付脚本

#停止原有工程 ps -ef | grep demo | grep -v grep | awk {print $2} | xargs kill#删除原有工程 rm -rf /opt/app/demo.jar#解压压缩包指定文件&#xff0c;并存入指定路径 #tar -zxf 压缩包 -C 解压到的路径 压缩包中指定文件名 tar -zxf /opt/app/demo.tgz -C /opt/app .…

工作312:uni-弹出框显示数据

<template><view class"wrap"><u-form :model"form" :rules"rules" ref"uForm" :errorType"errorType"><u-form-item label"标题" label-width"140" style"margin-left:30rp…

运算符和编码

格式化输出 现在有以下需求,让用户输入name, age, job,hobby 然后输出如下所⽰示:------------ info of Alex Li -----------Name : Alex LiAge : 22job : TeacherHobbie: girl------------- end -----------------你怎么实现呢&#xff1f;你会发现&#xff0c;用字符拼接的方…

CentOS7 2.新项目上线脚本

我司一个客户项目对应代码仓库的一个分支&#xff0c;每次新项目上线总是要从master复制一个分支&#xff0c;接着git clone到本地&#xff0c;在IDEA里面替换配置文件内容&#xff0c;上传到代码仓库&#xff0c;启动项目&#xff0c;配置nginx.conf&#xff0c;每次新项目上线…