一起学Java(二十)-----强制类型转换(对象)
不积跬步,无以至千里;不积小流,无以成江海。 Java语言基础 Java对象的强制类型转换 在java中强制类型转换分为基本数据类型和引用数据类型两种,这里讨论引用数据类型。 在Java中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需要强制转换。因为子类拥有比父类更多的属性、更强的功能,所以父类转换为子类需要强制。 构建 Son 和 Father 两个类 class Father{
public void eat(){
System.out.println(
netcore 2.2 封装 AutoMapper
在上篇中我们通过创建一个类并继承autoMapper的Profile类 public class Mappings : Profile
{
public Mappings()
{
CreateMap<UserDto, TbUser>();
}
} 这样做有一种弊端,就是当传输对象很多的时候,还需要手动一个个的配置映射关系,维护起来相对来说也比较麻烦。 封装AutoMapper 创建AutoMappe
C++和C函数的不同
C++中函数必须有返回类型,而C默认为int。 C++中返回类型必须和return实际的返回类型一致,或者可以执行隐式转换,C中并没有该限制,可以任意返回。 C++中没有参数的函数调用时不能有参数,C中可以使用任意类型,任意数量的参数进行调用。 f(void)
{char a = 0;
double d = 0;
if(a == 'a')
{
return &a;
}
else
{
return
5.如何保证 redis 的高并发和高可用?redis 的主从复制原理能介绍一下么?redis 的哨兵原理能介绍一下么?
作者:中华石杉 作者:中华石杉 面试题 如何保证 redis 的高并发和高可用?redis 的主从复制原理能介绍一下么?redis 的哨兵原理能介绍一下么? 面试官心理分析 其实问这个问题,主要是考考你,redis 单机能承载多高并发?如果单机扛不住如何扩容扛更多的并发?redis 会不会挂?既然 redis 会挂那怎么保证 redis 是高可用的? 其实针对的都是项目中你肯定要考虑的一些问题,如果你没考虑过,那确实你对生产系统中的问题思考太少。 面试题剖析 如果你用 redis 缓存技术的话
fastjson 1.2.24-基于JdbcRowSetImpl的PoC构造与分析
前言: 基于fastjson的第一种payload是基于templatesImpl的方式,但是这种方式要求Feature.SupportNonPublicField才能打开非公有属性的反序列化处理,是有限制的,这篇文章分析的基于jdbcRowSetImpl的方式可以使用jndi的方式更具有通用性一些,关于templateImpl的利用方式参考https://www.cnblogs.com/wfzWebSecuity/p/11431543.html 复现: RMI: package person
PHP获取二维数组指定字段值的和
array_sum(array_column($arr, 'num')); //获取二维数组 num字段的和
$arr = [
[
'device_uid' => '123456',
'num' => '5',
],
[
'device_uid' => '123457',
'num' => '2',
],
[
'device_uid' => '123458',
'num' => '4',
],
];
echo '<pre>';
//先对二维数组进
AGC015做题记录
C 树的性质是点-边=1 森林联通块计数都可以这么做所以直接维护前缀和再把边界处理一下就好了 //Love and Freedom.
#include<algorithm>
#include<cstring>
#include<cmath>
#include<cstdio>
#define inf 20021225
#define ll long long
#define N 2100
using namespace std;
int read()
{
int f=1,s=0; cha
同步工具类 CountDownLatch 和 CyclicBarrier
在开发中,一些异步操作会明显加快执行速度带来更好的体验,但同时也增加了开发的复杂度,想了用好多线程,就必须从这些方面去了解 线程的 wait() notify() notifyall() 方法 线程异步返回 Future ThreadLocal 类 线程池 ThreadPoolExecutor 同步工具类 CountDownLatch,CyclicBarrier,Semaphore,Phaser,Exchanger 估计上面每一个对于 2~3 年的 java 同学来说都是恶梦,比较难以理解,本
安晓辉:程序员在公司没事干时候,做什么好?(产品上想多一点,设计上想多一点,技术上做深一点、做宽一点,思维框架上学多一点)
(一)项目相关 做下面这些事情,可以让你更了解项目和所用技术: 看看项目的需求文档、设计文档,不要局限于你负责那个模块的,看整个项目的。 看看你在项目中用到的技术,自己掌握得如何,能否进一步提高,比如了解原理、阅读源码,重构自己的代码。 看看其他人的代码,尝试理解他的设计和所实现的功能。 看看别人用到的技术点、技术栈,尝试去了解。 (二)个人成长 思考下面的问题,可以让你找到更多事情来做: 我个人想在技术上做到什么程度? 这个技术,团队里哪个人用得最好,好在哪里?我该如何做到像他那样? 产品预
go插入mysql记录没有报错但是mysql中没有成功
今天在玩一个web的项目时,遇到了这么一个问题,go中使用insert into命令插入记录时,没有报错,但是在数据库中却没有成功,一开始我以为是post请求时获取数据出了问题,但是多次测试过后,发现没有问题,又多次打印error,到处调试,但总是没有发现问题所在。之后偶然post数据时我随便乱按键盘,随便一看竟然成功了,这时我才突然有了想法,我是最近用linux的,并没有考虑转码问题,同时在go中打开数据库时也转码了utf-8了,以为没有问题,这时候我进入mysql随便插入中文,发现没有成功
playtime-浙大羽协裁判部训练方案[随机事件序列的应用]
首先随机一列人名 然后按比例随机一列事件项。 然后将不确定项的人名更正为“某人”[比如发球违例,,,你怎么知道谁在发球] 最后定义一个初始化。 初始化呢,就是挑边。 球权还是场权? 发球还是接发? 谁发球?谁接发? 然后呢,我们就可以按这个序列,模拟执裁一场比赛: 模拟执裁比赛,,有什么用?就是要教会小朋友用裁判表。和规范措辞。 这表不是那么好用的。。。得培训很多次才能成为成熟的裁判。 我执裁了两届校赛,三届校新,都是决赛主裁[18校赛的时候我吹了包括团体在内的四项决赛],才算勉强成型的校园裁
网页设计——HTML(3)布局基础
为什么要布局? 网页布局,也就是如何安排网页的内容。 一个好的网页布局能够使人眼前一亮,吸引流量。 本篇文章中我们不讨论相关的设计理论,我们只对布局所用到的HTML知识进行学习。 几种简单的布局方式 网页主要分为三部分——头部、主体、页脚。 头部:网页的头部主要包含网站和网页的名字以及LOGO,还会包含网站的导航栏。 主体:网页的主体承载网页的主要内容。 页脚:网页的页脚通常会包含网站的基本信息、版权信息、备案信息和相关链接。 三段式: 这是最简单直接的布局,但简单并不意味丑陋,这种布局因为简
Jmeter中使用HTTP信息头管理器发送json格式请求体的接口
Jmeter中,如果请求体的格式为x-www-form-urlencoded,则不需要添加请求头,保持默认即可,但是如果遇到接口的请求体格式为json时,就要用到HTTP信息头管理器,在线程组上右键—添加—配置元件—HTTP信息头管理器
增强篇4 CO01生产订单屏幕增强
Step1. 结构 CO_AUFK 里增加自定义字段:ZZZ_TRIAL 然后激活结构 查看AUFK是激活状态, 字段增强完成; Step2. CMOD 使用客户增强:PPCO0012 生产订单:显示/更改订单抬头数据 创建项目:ZPP0001 进入组件分配: 把该增强注册到项目中(CMOD) 双击出口进入,如下图 然后,先处理包含文件中的:LXCO1TOP 双击:INCLUDE ZXC01TOP 然后,回退,处理屏幕 0100 双击屏幕: 屏幕里面的处理: 布局里,加上增强字段的控件: ZZ
Codeforces 1251D Salary Changing
D. Salary Changing 大意: 有n个变量, 每个变量有一个取值区间, 要求给这n个变量赋值, 使得n个变量的和不超过S且中位数尽量大(n一定为奇数) 二分答案, 中位数大于等于mid就是问能不能有(n+1)/2个变量的值大于等于mid, 排序贪心就完事了. #include<cstdio>
#include<algorithm>
using namespace std;
typedef long long i64;
const int maxn = 200002;
struct
xtu oj 1037
#include <stdio.h> #include <string.h> int main() { int n,i,flag,l; int str[1000]; char ch[1111]; scanf("%d",&n); while(n--) { scanf("%s",ch); memset(str,0,sizeof(str));// 先全部初始化。 l=strlen(ch); i=0; if(l%2!=0)//奇数不符合 { printf("No\n"); continue;//防止输
周排行