00:00
好,这个应用举例完了以后呢,咱们又可以过来呢,看一下咱们说的这个课后练习题了,这个练习题呢,相当于又是一个让大家去熟悉一下关于时代的一个使用的一个例子了,CTRLC这个咱们呢就一块来写一下,这呢我新建一个包。好,在这里边我们来说明这个问题,嗯,这呢是关于这个叫银行账户的,我就写一个count,这呢我给大家分开吧,然后专门呢再去写一个测试test,行,那这个account该怎么写这块呢?我们把这个说明呢拿过来。CTRLV行,看这个情况。嗯,粘到粘到这一份吧。把这个拿到这先先写它这呢是先来创建一个count,说呢,这是一个银行账户的一个类,这个类里边呢,有相关的这些属性,上午咱们呢,其实也稍微提过这个事儿了,我们下边呢就直接在这去声明,声明呢,看看哪些呢,应该是一个静态的账号,账号是肯定是一个非静态了,对吧。
01:10
嗯,账号我们这我就先写成一个int类型的了,ID,然后密码,密码呢,咱们用一下string类型的叫password,我捡起了叫PWD了,存款余额double类型的叫balance,这个是不是也应该是飞行态的呀,对的,这呢都是每个对象呢,可能都有所不同,你就别共享了,就大家每个人都一份,那接下来利率,利率也是一个double类型的,我们叫interest。Rita,那利率的话呢,这个你存跟我存大家存的都利率应该是一样子的,所以呢,我们不妨呢就共享得了,就这样子好,这个呢,我们就用static来修饰了,接下来叫最小余额,就是我办这张卡的话呢,银行可能有规定说你最起码里边得存多少钱,这呢我们就叫做最好余额,这针对于所有人来讲都是一样子的,所以我们也加了一个static,嗯,最小余额它可能也是个double了,我就引用double声明,这就mean。
02:19
嗯,密码你吧,这样最少最少呢,假设你都确定呢,我就直接写到这儿也行,最少得放一块钱,这样也行,没了就这样的一些属性,那这些属性完了以后呢,有些呢,你可以给他做一些显示赋值,像这个ID呢,就不用了,这个银行卡的密码的话呢,你可以给他先付一些值,比如说这个办好卡以后,他都会先告诉你说六个零或者六个一是吧。诶大家呢,一定要记着,你办了卡以后呢,密码第一时间呢要改一下。你要不改的话呢,这个别人捡到那个卡你还往里存钱了,那要一试就是通了就是吧,你看所以呢,这是一个算初始密码余额的话呢,那你开始那就没有,这就用个0.0就行,那利率的话呢,利率的话呢,你也可以给他显示负一个值,后边呢也可以改,或者呢,干脆就直接给他提供盖的方法都行,这个就比较灵活了,成嗯还有一个事儿,他这里边提到说这个账号账号ID它呢要自动生成。
03:25
又跟咱们刚才那会写的这个圆是不是类似了,所以我们讲这道问题的话呢,其实也涉及到一种自动赋值的一种想法,咱们呢也可以这块呢来同样的做法,我呢声明一个叫private static,我上面用的是int类型的,那我这也用个int类型的,叫IN1001,那这呢是用于自动生成这个ID使用的好这就可以了。那么接下来我们先提供这些属性的一些get set方法吧,Out shift s get and sets,不一定所有的都要选,有些呢,不适合选的呢,就不要选了,比如说in是不是不要操作啊。
04:07
那拿着in,我们让它自动生成ID的,你还给它重新设置过值,或者你又给它初始化退出了,那有可能会导致大家账户的ID一样了,所以这个不要写,然后这个ID的话呢,又说是自动生成的,这我们可以get这个set的话呢,你可以给它也去掉,就别改账号了,就直接呢自动生成的了,密码呢可以get set很正常余额,余额呢,Set加上也行,正常来讲这个余额呢,只能是通过存钱取钱去考虑了,所以你不能再重新塞一下多少,你你可以理解为就是你又存了多少钱,行,这个你也可以不提供,就是根据实际问题呢,我们可以做一些调整,那么银行呢,要求说你最低得存多少钱也可以改。说今天呢要求大家最少得存一块钱,明天呢说至少得放100才行,那我们这儿呢,也可以给一个赛的方法,然后呢,银行的利率那当然也可以改了,而且说经常改,嗯经常改,现在这个银行利率呢,其实已经是比较低了,嗯,行这呢我们把它呢也都勾选上,行这块我们直接OK一下。
05:13
嗯,OK完OK完以后,我们看到呢,就是原来我这个属性是静态的,自然而然你会发现它相应的这个get或set方法呢,也都是静态的。那原来呢,你是一个非静态的,现在呢还是一个非静态的,嗯,这就关于这个静态方法呢,大家也能体会一下,什么时候它应该是静态的这样一个情况,好,那我们还可以呢,去这个说明这个构造器了,就public account account这个呢,咱用了一个叫空餐的了,空餐的话呢,那就意味着这个密码呢,我就先不想考虑了。这个balance的话呢,余额也是个默认值了,但是这个ID是不是得整上。嗯,那就是in加加一下,然后这些呢,这都是,嗯,跟你具体这个对象没什么关系的,这是人家这个跟类啊,类所拥有的这个属性,那就是回头我用类去做一个,呃,Set呀或者get呀,你就不要在你这个构造器里边呢进行操作了,虽然说呢也可以操作,但是你就别操作了。
06:20
行,然后再接着呢,你可以去提供这个带参数的构造器,比如说呢,我们ID你就不要去付了,比如说这个密码,然后这个余额,你在创建这个账户的时候呢,可以把这两个变量呢,也给它附上值,嗯,那还是ID等于这个加加一下,然后Z4.password,诶还用这个password做个赋值,然后Z4.balance,诶balance复叶值,哎主要呢,咱们操作的还是你这三个属性,就是你自己这个对象有的属性,我们才会考虑在我们这个构造器当中进行一个初始化,至于说人家这个静态的话呢,通常咱们都不会在这些构造器当中去操作的。
07:08
那你想你要在这操作,那就意味着造个对象还得改一下,你改别人也跟着改了,这就很恶心了,所以通常呢,都不会这样去做的。好,这呢,我们把这个类呢就写完了。这块大家还有没有什么疑问没有啊。就是哪些是静态的,哪些不应该静态,怎么调啊,这块呢,大家得稍微熟悉熟悉,原来呢,咱们都没有静态,那都还好,现在有静态了,还是比较麻烦一些的,是吧?哎,你得去熟悉一下,什么时候该静态,什么时候不该静态,那写完以后呢,我们来这进行一个测试,我这呢写一个没方法进来了,进来以后那我们可以呢,直接呢就上来去造对象account out斜杠有两个,一个呢是空餐的,那我就先用个空餐的,然后呢,紧接着我再造一个带餐的out斜杠,这个我就用下边这个密码。
08:08
大家都用什么密码啊,这就不方便说了,就是吧,123456啊,这个好多银行的话呢,这个银行密码都是六位的,但不让你用123456,有那用654321,也不让你用654321对吧,对,就是你重复的这些呢,其实也很,嗯666666啊这种呢,也也不行,所以大家呢,就开始生日了,嗯,这个生日的话呢,也是尽可能少用,这个很容易呢就被破了啊,不是被破了,是他知道你这个情况了,像现在有这个大数据了,这个每个人的这个隐私的话呢,其实很难说有隐私这回事了,就是原来的时候呢,其实你这个隐私呢,也也也无所谓叫隐私都暴露出来了,但是原来的时候呢,对你个人,你可能在这块平台上你暴露了这点信息,在那个平台上暴露那点信息,就是都是碎片化的,它连不起来,但是现在呢,是可以给你连起来的啊,连一起的话呢,那就麻烦了。
09:08
比如说你在这个QQ上,你暴露的是你的生日,那跟这个银行里边你设置密码的话呢,它其实两套系统,那那要是整个把这个系统连到一起的时候呢,诶你这个是生日,这密码呢,基本上就是根据一输入发现就进去了,哎这个是很有可能的,而且呢,那这个不是说银行卡密码了,大家可能有QQ号啊,这个这个微信的密码啊,还有这个其他的好多现在只要是APP的话呢,基本上都得需要你登录的时候输个密码,那每个人不可能说一下记好多套密码了,有可能大家有的人可能就记一套是吧,那就意味着如果把这个数据呢,收集起来,我知道这一个密码之后呢,其他的这个密码呢,差不多也就都直接一输就都进去了。嗯,对,就是这样一个问题啊,像这个是哪一年cidn还报过这个问题了,CAD呢,就是竟然后台当中保存用户的密码的时候还是用的铭文。
10:02
这就太恶心了,明白什么意思,就是大家呢,正常咱们去这个对能看见啊,咱们去注册或登录的时候呢,这用户名下边你写密码,这个密码呢,你写完以后呢,它要通过网络的方式发送到他的后台进行一个校验,你要首次呢注册,它就会进行一个保存,这个发送出去,这个密码呢,都需要去加密的,像我们常用的比如MD5加密,你这要写了个ABC,加密完以后呢,后边这块呢,出现的就是一堆这个乱码,一堆符号,就是特别长的一堆符号,就是你根本不知道用户的输入的是什么这个密码,而且MD5这种加密是不可逆的,就是你看到这个这个这个按文以后呢,你想通过这个MD5算法再返回来,生成这个返回出来ABC是不可能的啊,诶不可能的,你怎么再登录啊,在登录的时候,对你只能是在重新输入的字串,我去校验以后生成的这个呢,是不是跟你这个一样,只能是通过这样的方式去校验呢?你用户是不是这个密码输入的是正确的。
11:02
那这个数据库当中呢,他肯定要存的都是这种暗稳的啊,结果呢,他没有给你加密这块密码是多少都能看得见,而且他还专门是个程序员的一个网站是吧,这点就说不过去了啊,哎,就类似这样的这个事情的话呢,就是尤其在现在这个大数据的这个场景下,每个人其实都是一个透明人一样。而且这种大数据的这种整合趋势就越来越明显啊,你不想看到也不行,因为咱们大家呢,都是干这个的是吧?啊以后呢,你也会参与到这个当中啊,包括像现在这个今年特别明显就是你能看到说好多公司呢,到年底的时候开始做这个裁员了。那应该说有两方面啊,一方面的话呢,是大环境上可能是不太好。啊,这个咱们做it的可能还好一点,你看到其他的这个行业里边,其实很多呢,经济大环境都不太好,一个是中国一个全世界都是如此,这是一方面,另外一方面呢,就是今年呢,国家这个税改的力度其实很大,这个尤其对企业这块的话呢,都是这样,就是以前的话呢,可能有很多这个企业呢,不正规的巡查税呀,包括这个这个社保啊等等这样一些情况,那现在呢,这个事儿你就别想了,因为国家呢,现在有这个大数据的监控,前段时间出来一个政策说只要呢,这个账户当中,不管你是个人的还是企业的,只要这种转账这个超过20万的都认为是一个可疑的转账,然后支付宝和微信呢,转账超过5万的就认为是可疑转账,一旦他要是认为你是可疑,转账就盯上你了,你还确实是可疑的话。
12:34
那就废了是吧,那就想起来范冰冰啊啥的这种情况了是吧?嗯,这写了个啥呀,黑客是怎么入侵别人电脑的,这个可说的那就多了啊,你是怎么想到这个问题的,这就多了,这是他要扫描你的漏洞,包括你攻击网站也是一样扫描漏洞,然后根据这个漏洞的话呢,它可以进行一些修改啊等等就进去了啊这个后边的话,咱们这个这个讲到后边一些内容的时候呢,也可以有一些演示,现在呢,还做不了啊啊,那现在先不说这个事了啊,行,这个这个拉回来,就是大家设置这个密码的时候呢,还是要注意一下的啊嗯,就拉回来是吧,拉回来再拉出去也行啊,你像现在这个京东啊,或者是这个京东啊或淘宝啊,都会做这个用户画像啊,大家做大数据的,回头也会做这个事儿,就是每个人的话呢,你是什么样的一个什么样的一个人是吧。
13:34
啊,后台都有一个画像的,那以前的话有段时间比较恶心的,我在京东上发现过,就是说我看到这个商品,同样这个商品的价格跟在我媳妇那看到这个价格不一样,这个价格还是我发给过去他的链接,就首先明确肯定是一家店的啊这个事的话呢,国家后来出来一个规定说不允许这样做,对就是他做这个事呢,其实很容易的,就是说每个人他的消费习惯可能不一样,比如说这呢定位他是一个什么样的用户,呃,然后呢,甚至以前也出现过说比如你要是农村的一个人,他去买一个这个这个名牌包,什么LV啊或啥的是吧,哎,农村的他就定位说这个人可能没有没有见过这个包,那我可以给他发一个假货,或者要高仿的,他也看不到,你要是一个上海的一个人要去买这个LV的包呢,我得给他发个真的,因为他可能天天在用,或者他朋友在用,发了一个发现跟这个,你发一个高仿的,他发现是假的,那你这个店就废了。
14:26
呃,就是以前说过这样的事情,真要做的话呢,确实可以做得到,但是呢,国家规定说你不允许这样整价格也是一样,其实从这个经济学上来讲呢,我们最好卖一个东西呢,给不同的人卖不同的价格,最大限度呢,榨取每个人的这个对这叫剩余价值有点过了是吧,就比如说你买一个手机,大家这个苹果手机呢,现在比如说卖到这个9000块钱,现在9000不止了,就它这个旗舰机,就是其实可能它的成本呢,就2000块钱,对于苹果手机来讲,其实或者任何一个商品都这样,他希望什么呢?希望呢,你认为你最大能接受的是多少钱,你就去买,他现在呢,只能定一个价格叫9000,那就意味着呢,很多人觉得9000值,那9000以上的这些人会买,那9000以下的这些人呢,他就不会买,他就只能是挣这一部分人的钱,那最好是什么呢?最好就是说这个认为,像这个只要是认为是2000以上的这些人呢,都可以卖,你认为这个手机值2100。
15:24
两千零两千一是2100块钱,那呢,哎,我跟不卖去比,是不是也能挣100块钱,那我就卖给你,你这个人呢,认为这个手机呢,值9000块钱,那我就拿9000块钱去卖给你。这就是所谓的这其实经济学上叫价格歧视,价格歧视这个你要画一个图的话,它是这样子的啊,就是这是一个这个曲线是吧,就是你认为这个商品应该值多少钱,那实际上咱卖的时候呢,只能是卖这样的钱,比如说只能卖这个9000块钱,你这画一条线,画一条线就是这是你实际卖的这个价格,嗯,卖的这个价格这个一诶这个还不太好说这个事是吧。
16:06
那别画了,嗯,就是你认为它值多少钱,你就这个在他这个成本以上,他就都卖给你,这是最好的,你认为它值1万,他就1万块钱卖给你是吧?但事实上呢,这个商品呢,只能定一个价格,那定一个价格,你认为这个商这个手机值15000,但是呢,你不用掏那么多钱,9000块钱就可以了。那低于这个的这个价格的,他就卖不出去了,现在呢,只能是这种情况,那么有了这个大数据以后的话呢,那每个人我分析他的这个行为,分析他这个画像,他的购买力其实都可以分析出来的,而且这个数据量越大就越好,现在很多这个说黑客去盗取这个用户信息,他不是说对你这个用户密这个这个银行卡密码感兴趣了,因为现在的这个安全其实做的已经很好了,他想拿你这个银行卡密码,其实通过这种方式呢,这个这个是不太可能了,他通常呢,就是感兴趣的,就是这个用户的数据,就是大家呢,每天那种购买记录啊,一些交易记录啊,浏览记录啊,对这些数据呢是感兴趣的,很多爬虫呢,也都是爬这些数据,这些数据呢,我们就可以进行大数据的分析了啊,用户的一些行为一些特点也都可以拿得到,你像这个,呃,蚂蚁信用啊,包括京东的一些这个信用值啊,这个是他这个体系里边非常重要的一些资源啊,如果被攻击的话呢,其实他们都想拿到用户的这些数据。
17:20
那那么分析出来以后,我就可以给每个人呢,给这个商品定不同的价格,你也不知道别人卖多少钱,反正你一看这个呢,其实正常卖的卖2000,他感觉你呢是一个高消费人群,他就2500,你觉得两千五也挺便宜的,你可能就买了,就这种是吧,是可以做到的,但是国家呢,现在禁止他这样去做是吧,好这个拉回来啊,拉回来的话,现在呢,我们去附一个这叫密码,密码呢我就随便写一个了,这个随便写一个呢,其实也是有特点的,就是键盘上呢,这连着这几个成语员可能还用是吧?嗯,然后呢,后边我们去提供一个,后边差个什么呀,差个余额,余额呢两块钱,2000块钱。
18:12
这呢就造了两个账户,造两个账户的话呢,这个关于你自己这个账户的一个属性呢,我们就做了一个赋值了,嗯,包括呢,我们在这个count这块,昨天咱们也讲了这个twoth string方法了,Out shift s加一个toth string,这个to string的话呢,默认情况下呢,也只是会输出你自己这个私有的这些属性是多少啊,这个static的话呢,不是私有的这个你自己所有的这些属性,这个static话呢,默认也没有。加上以后回过来我们呢,先做一个输出。这呢写一个二,此时呢,就会调我们这个出存方法执行,这是相应的ID那都有,这是这个密码,一开始没有设置过余额也没有,这就他的这个信息,那那我们呢,在这个后边也行,或者在前边也行,还可以呢,通过我们这个类呢,咱去做一些设置,比如说呢,咱可以去set一下,呃,这个利率,利率呢是0.012。
19:11
啊,这个呢,我们都可以通过这个诶账户的这个方式,直接直接呢进行一个调用,哎,再设置一下这个最最低的这个存款余额,说这个最低呢,你就存100块钱等等,那这个呢,你设置完以后,我们也可以通过咱们的对象呢去调第二啊我去get一下说呢叫interest rate银行利率,或者让我们再去get一下它的最低存款余额,就是我们通过这个用户的话呢,也可以去调用这些静态的结构。哎,这呢也是没有问题的。好,这呢就是咱们关于这个课后的一个练习题啊,下来呢,大家也可以呢,把它再写一写,通过这个呢,再去体会一下我们关于这个静态结构的一个使用。
我来说两句